【发布时间】:2013-03-01 19:17:56
【问题描述】:
使用 MFC 编程连接 access 数据库,使用安装在 windows 8 x64 上的 Visual Studio 2012 更新 1,以下代码抛出异常,这在 vs2010 和 windows 7 x64 之前没有发生过。 ODBC 管理器有什么变化吗?我应该如何更改连接字符串。
CDatabase db;
db.OpenEx(TEXT("ODBC;Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dsn='';Dbq='d:\\databases\\a.mdb'");
以及异常信息:
'Data source name not found and no default driver specified'
它也不适用于 accdb 文件。
【问题讨论】:
-
除非是拼写错误,否则您错过了“Microsoft”前面的“M”。
-
您确定 x64 中的 ODBC 驱动程序与 x86 中的调用相同吗?另外,去掉 Dsn=''。您应该使用 Driver 或 Dsn,但不能同时使用
-
其实我在这里打错字了(少了 M)。不是原始代码。
-
几乎所有的连接字符串模板都有 Dsn='' 并且删除它无助于解决问题。
标签: database visual-c++ mfc