【发布时间】:2016-07-25 22:28:52
【问题描述】:
我在 excel 2013 的电子表格中编写了一些 VBA 代码,该代码将连接 Oracle 11g 以将一些数据写入其中。我使用以下代码连接远程 Oracle 服务器:
Private Function open_DB(tnsInfo As String, userName As String, pwd As String) As ADODB.Connection
Dim conn As ADODB.Connection
Dim connStr As String
Dim tnsInfoArr As Variant
tnsInfoArr = getTnsProperty(tnsInfo, ";")
On Error GoTo Error_Handling
Set conn = New ADODB.Connection
'connStr =
connStr = "Driver={Microsoft ODBC for Oracle}; " & _
"CONNECTSTRING=(DESCRIPTION=" & _
"(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=" & tnsInfoArr(1) & ")(PORT=" & tnsInfoArr(2) & "))" & _
"(CONNECT_DATA=(SERVICE_NAME=" & tnsInfoArr(0) & "))); uid=" & userName & " ;pwd=" & pwd & ";"
conn.ConnectionString = connStr
conn.CursorLocation = adUseClient
conn.Open
conn.CommandTimeout = 120
If conn.State = adStateOpen Then
'MsgBox "connect to Oracle successfully"
'conn.Close
End If
Set open_DB = conn
End Function
这段代码在我的电脑上运行良好,但在我同事的电脑上却无法运行,我同事的机器上显示了以下错误消息:
[Microsoft][ODBC Driver Manager]未找到数据源名称且未指定默认驱动程序
ADO 错误 #:-2147467259
...
我的同事需要在他的 PC 上进行一些配置吗?但我记得我没有在我自己的电脑上配置一些东西。
谁能告诉我如何解决这个问题?
我的操作系统版本是 64 位 windows 7 企业版 SP1
我使用的是 MS Office 2013 64 位版本。
【问题讨论】: