【发布时间】:2016-12-16 11:50:51
【问题描述】:
我试图在 VBA 脚本中创建到 Oracle 数据库的 ODBC 连接,但出现以下错误:
Run-time error '-2147467259 (800004005)':
Specified driver could not be loaded due to system error 193: (Oracle in instantclient_11_2, C:\apps\oracle\11.2.0.3\instant-32\SQORA32.dll)
转到
%systemdrive%\Windows\SysWoW64\odbcad32.exe时,我可以看到我的驱动程序“instantclient_11_2”和文件“SQORA32.dll”,并且在使用 Python 连接到数据库时它可以完美运行。使用regedit时,在
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers我也可以看到驱动。-
这是我的代码,我尝试了两种不同的连接字符串:
-
strCon = "DRIVER={Oracle in instantclient_11_2};DBQ=MyDBQ;UID=MyID;PWD=MyPWD"-
strCon = "Driver={Oracle in instantclient_11_2}; " & _ "CONNECTSTRING=(DESCRIPTION=" & _ "(ADDRESS=(PROTOCOL=TCP)" & _ "(HOST=MyServer)(PORT=MyPort))" & _ "(CONNECT_DATA=(SID=MySID))); uid=MyID;pwd=MyPWD;" 我的 MS Excel 版本是 32 位的,我的驱动程序 (SQORA32.dll) 也是如此,所以我认为它与 322/64 版本问题没有任何关系,但我可能错了。
欢迎任何帮助/建议/解决方案。
【问题讨论】:
-
当您成功使用 32 位驱动程序时请告诉我们。 :)
-
@cyboashu 我尝试了 32 位和 64 位驱动程序,无论如何我都会遇到同样的错误。