微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用C#连接到MS Access文件(mdb)?

我正在尝试连接到一个mdb文件,我明白我需要Microsoft.OLEDB.JET.4.0数据提供程序.不幸的是,我没有安装在(大学)机器上.
既然他们不提供这个提供者,我相信应该有办法.

如何连接到没有Microsoft.OLEDB.JET.4.0的文件或有什么替代品?

我有以下提供者:

我已经尝试使用OLE DB提供程序的Microsoft目录服务,测试连接时,我得到’测试成功,但一些设置不被提供程序接受’.我拿了那个字符串并且使用它,我得到ADsDSOObject’失败,没有错误消息可用,结果代码:DB_E_ERRORSINCOMMAND(0x80040E14).

解决方法

最简单的连接方式是使用这样的代码通过OdbcConnection
using System.Data.Odbc;

using(OdbcConnection myConnection = new OdbcConnection())
{
    myConnection.ConnectionString = myConnectionString;
    myConnection.open();

    //execute queries,etc

}

其中myConnectionString是这样的

myConnectionString = @"Driver={Microsoft Access Driver (*.mdb)};" + 
"Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=;

ConnectionStrings

另外,您可以创建DSN,然后在连接字符串中使用该DSN

>打开控制面板 – 管理工具 – ODBC数据源
经理
>转到系统DSN页面添加新的DSN
>选择Microsoft Access驱动程序(* .mdb),然后按END
>设置DSN的名称(在本例中选择MyDSN)
>选择要使用的数据库
>尝试使用Compact或Recover命令查看连接是否正常工作

现在你的connectionString可以这样写

myConnectionString = "DSN=myDSN;"

原文地址:https://www.jb51.cc/csharp/93532.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐