0

我一直在使用这个连接字符串:

 fn_Connection_String = "Provider=MSDAORA;Data Source=[address]:1521/orcl;User ID=xxx;Password=xxx"

...而且它一直运行良好。为我的客户工作的 IT 公司报告说客户无法再使用我的软件,它没有连接到数据库。我用 Oracle 工具进行了测试,一切似乎都很好,所以我认为问题出在提供商身上。

我也试过这个,但遇到了同样的错误,但来自不同的软件:

fn_Connection_String = "Driver={Microsoft ODBC for Oracle}; " & _
    "CONNECTSTRING=(DESCRIPTION=" & _
    "(ADDRESS=(PROTOCOL=TCP)" & _
    "(HOST=[address])(PORT=1521))" & _
    "(CONNECT_DATA=(SERVICE_NAME=orcl))); uid=xxx;pwd=xxx;"

有谁知道发生了什么?也许某些更新破坏了某些东西,或者人们一直在环境中捣乱?

似乎旧的 ODBC 连接不再有效,并且有一个“instantclient 中的 oracle”连接器有效,但在 VBA 中无效。

我收到的信息是Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation. Provider is unable to function until these component are installed

编辑 发布后,我发现 IT 公司安装了 2 个驱动程序,版本 11 的东西,以及即时客户端,版本 12 的东西。我尝试使用"Driver={Oracle in instantclient_12_1}; "(因为这是 32 位 ODBC 连接管理器中的驱动程序名称),但这不起作用。

4

1 回答 1

0

微软在 2 月 9 日发布了一个补丁,导致了这个问题。

它现在被列为已知问题。

https://support.microsoft.com/en-us/kb/3126587

于 2016-03-03T09:18:59.633 回答