4
我想在运行时创建的Access数据库和注册是使用下面的代码在ODBC.INI一个DSN注册为DSN:创建在运行时库和运行时
BOOL fCreated;
fCreated = SQLConfigDataSource(NULL,ODBC_ADD_DSN,
"Microsoft Access Driver (*.mdb)",
"CREATE_DB=.\\ATest.mdb General\0");
printf("Database created : %d\n",fCreated);
BOOL ReturnResult = SQLConfigDataSource (NULL, ODBC_CONFIG_DSN,
"Microsoft Access Driver (*.mdb)",
"DSN=TESTDSN_DSN\00DBQ=.\\ATest.mdb\ \
00FIL=MSAccess\00Description=TESTDSN_database\00UID=\00");
printf("Database registered : %d\n",ReturnResult);
的第一个语句返回1,表示数据库已创建,但第二个返回0,表示它不能在ODBC.ini中注册为DataSourceName。任何人都可以告诉我为什么会发生这种情况,因为路径和名称都是正确的。
尝试调用SQLInstallerError,看看是什么错误。 – 2010-11-09 19:23:50
在第一次调用中不使用ODBC_ADD_SYS_DSN,或者第二次使用ODBC_CONFIG_DSN,即它们不应该匹配吗? – 2010-11-09 19:29:46
我尝试过使用ODBC_CONFIG_DSN ....但仍不起作用 – Omayr 2010-11-09 19:31:47