【发布时间】:2011-11-28 21:10:16
【问题描述】:
我想为练习制作一个简单的应用程序,因此最好连接到 Access (.accdb) 之类的简单数据库
我的程序如下所示:
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Linq;
using System.Web;
namespace myProject.Account
{
public class DbManager
{
private OleDbConnection _dbConnection;
public void OpenDbConnection()
{
_dbConnection = new OleDbConnection {ConnectionString = GetConnectionString()};
}
private string GetConnectionString()
{
return "Provider=Microsoft.ACE.OLEDB.14.0;Data Source=exercise1.accdb";
}
public void CloseDbConnection()
{
_dbConnection.Close();
}
public void GetUser()
{
DataSet myDataSet = new DataSet();
var myAdapptor = new OleDbDataAdapter();
OleDbCommand command = new OleDbCommand("SELECT * FROM tblUser", _dbConnection);
myAdapptor.SelectCommand = command;
myAdapptor.Fill(myDataSet, "tblUser");
}
}
}
我使用 Visual Studio 2010。 当我使用内置调试模式“不调试启动”(CTRL+F5) 测试我的应用程序时,我收到此错误:
“Microsoft.ACE.OLEDB.14.0”提供程序未在本地计算机上注册。
我已尝试从 Microsoft omepage 下载并安装“Microsoft Access Database Engine 2010 Redistributable”(64 位):http://www.microsoft.com/download/en/details.aspx?id=13255
不幸的是,它没有解决问题。 执行 myAdapptor.Fill() 时仍然出现错误。 怎么了?
【问题讨论】:
-
您的操作系统的位数是多少?如果操作系统是 32 位,则 64 位将无法工作,反之亦然,您也不会并排安装。
标签: c# asp.net oledbconnection