我对Access/VB的工作还比较新(两个月前开始),请多多包涵。
我继承了一个数据库,它与Oracle有一个ADODB连接,在已经测试过的Windows 7机器上运行良好(共5台),但在Windows 10机器上测试时出现以下错误(共2台)。 (所有机器都运行Access 2010)。
运行时错误“3709”:无法使用该连接执行此操作。 在此上下文中,它是关闭或无效的。
以下是代码:
我已经费尽心思并在过去两天里到处搜寻可能的解决方案,但都没有成功。
以下是我根据其他帖子尝试/验证的内容:
我继承了一个数据库,它与Oracle有一个ADODB连接,在已经测试过的Windows 7机器上运行良好(共5台),但在Windows 10机器上测试时出现以下错误(共2台)。 (所有机器都运行Access 2010)。
运行时错误“3709”:无法使用该连接执行此操作。 在此上下文中,它是关闭或无效的。
以下是代码:
Public Function PTMNConnect() As ADODB.Connection
Dim Cn As ADODB.Connection
Dim Conn As String
Conn = "DRIVER={Microsoft ODBC for Oracle};CONNECTSTRING=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=host)(PORT=port))(CONNECT_DATA=(SERVICE_NAME=PROD)));uid=username;pwd=password"
Set Cn = New ADODB.Connection
With Cn
.ConnectionString = Conn
.CursorLocation = adUseServer
.Open '**Errors Out on Open**
End With
Set PTMNConnect = Cn
End Function
我已经费尽心思并在过去两天里到处搜寻可能的解决方案,但都没有成功。
以下是我根据其他帖子尝试/验证的内容:
- 确认安装了Oracle客户端
- 确保Path变量包含必要的路径
- 验证所有机器上的引用和文件路径相同
Conn
的值可能会有用。你提到了一个“Path变量”。它在哪里以及如何使用?如果省略CursorLocation
,你是否会得到不同的结果? - HansUp