Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过VBA与Oracle的连接不再工作_Oracle_Excel_Connection String_Instantclient_Vba - Fatal编程技术网

通过VBA与Oracle的连接不再工作

通过VBA与Oracle的连接不再工作,oracle,excel,connection-string,instantclient,vba,Oracle,Excel,Connection String,Instantclient,Vba,我一直在使用此连接字符串: fn_Connection_String = "Provider=MSDAORA;Data Source=[address]:1521/orcl;User ID=xxx;Password=xxx" …而且一直运行良好。为我的客户工作的IT公司报告说,客户无法再使用我的软件,它没有连接到数据库。我使用Oracle工具进行了测试,一切似乎都很好,所以我认为问题出在提供者身上 我也尝试过,但遇到了相同的错误,但来自不同的软件: fn_Connection_String

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

 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连接不再工作,并且有一个“oracle in instantclient”连接器可以工作,但在VBA中不工作

我得到的消息是未找到Oracle客户端和网络组件。这些组件由Oracle Corporation提供,是Oracle 7.3.3版或更高版本客户端软件安装的一部分。在安装这些组件之前,提供商无法运行

编辑
发布后,我发现IT公司安装了2个驱动程序,版本11左右,还有instantclient,版本12左右。我尝试使用
“Driver={Oracle in instantclient_12_1};”
(因为这是32位ODBC连接管理器中的驱动程序名),但不起作用。

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

它现在被列为一个已知的问题


听起来好像有人在环境中胡闹。我讨厌在我的一个或多个环境中到处乱扔垃圾。@CustinatorOfcode@n8您是否检查了端口是否被允许?一定是有人不小心不允许那个端口。不,我没想到。我会让他们看的,谢谢你的建议。你有任何错误信息吗?我试了很多东西,它又开始工作了。另一个因素是Oracle驱动程序现在位于Oracle的InstantClient中。最终,我重建了连接字符串,这是使其工作的最后一步。