我试图通过Excel连接到Oracle数据库。我在我的机器上安装了Oracle的Instant Client,但是在运行此代码时收到此消息:
Sub testing()
Dim myConn As Connection: Set myConn = New Connection
Dim mySet As Recordset: Set mySet = New Recordset
Dim CONNSTRING As String
CONNSTRING = "Driver={Microsoft ODBC for Oracle}; " & _
"CONNECTSTRING=(DESCRIPTION=" & _
"(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=xxxxxx.xxx.xxxxxxxxxxx.com)(PORT=1524))" & _
"(CONNECT_DATA=(SERVICE_NAME=dev))); uid=xxxxxxx; pwd=xxxxxxxxxxx;"
myConn.Open CONNSTRING
mySet.Open "SELECT * FROM apps.ap_invoice_lines_interface", myConn, adOpenStatic, adLockBatchOptimistic, adCmdTable
Sheet1.Range("A1").CopyFromRecordset mySet
mySet.Close
myConn.Close
End Sub
我得到的信息是
找不到Oracle(tm)客户端和网络组件。这些组件由Oracle Corporation提供,是Oracle 7.3(或更高版本)客户端软件安装的一部分。在安装这些组件之前,您将无法使用此驱动程序
答案 0 :(得分:5)
当桌面支持团队安装错误的Oracle客户端时,我经常看到此错误。如果您的应用程序(在本例中为Excel)是32位,那么您还需要使用32位ODBC和32位Oracle客户端。您的操作系统或硬件是64位并不重要。重要的是申请。并且似乎大多数MS Office安装都是32位,即使安装在64位Windows上也是如此。
答案 1 :(得分:0)