【问题标题】:Connection to Oracle through VBA no longer working通过 VBA 连接到 Oracle 不再有效
【发布时间】:2016-03-03 17:18:59
【问题描述】:

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

 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 左右,还安装了 Instantclient,版本 12 左右。我尝试使用"Driver={Oracle in instantclient_12_1}; "(因为那是 32 位 ODBC 连接管理器中的驱动程序名称),但这不起作用。

【问题讨论】:

  • 听起来好像有人在环境中闲逛。当垃圾在我的环境中被弄脏时,我讨厌它。
  • @CustodianOfCode 完全。
  • @n8 你检查过端口是否被允许吗?一定是有人不小心禁止了该端口。
  • 不,我没有想到。我让他们看看,谢谢你的建议。
  • 你有什么错误信息吗?

标签: oracle excel connection-string instantclient vba


【解决方案1】:

Microsoft 于 2 月 9 日发布了一个补丁,导致此问题。

它现在被列为已知问题。

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

【讨论】:

  • 我尝试了很多东西,它又开始工作了。 Oracle 驱动程序现在包含在 Oracle 的 InstantClient 中还有另一个因素。最终我重建了连接字符串,这是让它工作的最后一步。
猜你喜欢
  • 2020-11-27
  • 1970-01-01
  • 1970-01-01
  • 2016-08-30
  • 1970-01-01
  • 2016-01-03
  • 2020-04-08
  • 1970-01-01
  • 2020-07-09
相关资源
最近更新 更多