我正在尝试从Microsoft Excel应用程序运行查询,但一直无法成功连接。 我在我的本地机器上安装了PostgreSQL 9.3,并且运行64位的Windows 7。我有一个名为dvdrental的示例数据库,这是一个演示数据库。 我只需要连接到数据库,运行查询,并在我的工作表(或立即窗口)中查看输出,以解决连接问题。 以下是目前不起作用的内容。
Option Explicit
Public objConnection As ADODB.Connection
Public strConnection As String
Public Sub TestPostgresConnection()
Dim strConnection As String
strConnection = "Driver={PostgreSQL Unicode};Server=localhost;Port=5432; Database=dvdrental;UID=sa;PWD=wrox;"
Set objConnection = New ADODB.Connection
Set objRecordSet = New ADODB.Recordset
objConnection.Open strConnection
With objRecordSet
.ActiveConnection = objConnection
.Open "SELECT * FROM actor"
End With
Do While Not objRecordSet.EOF
Debug.Print objRecordSet.Fields(0).Value
objRecordSet.MoveNext
Loop
objRecordSet.Close
objConnection.Close
Set objRecordSet = Nothing
Set objConnection = Nothing
End Sub
这是我的参考文献清单: Visual Basic For Applications Microsoft Excel 14.0 Object Library OLE Automation Microsoft Office 14.0 Object Library Microsoft Forms 2.0 Object Library Microsoft Access 14.0 Object Library Microsoft ADO Ext. 6.0 for DOL and Security Microsoft ActiveX Data Objects 2.8 Library Microsoft Windows Common Confrols 6.0 (SP6)
执行测试方法TestPostgresConnection时,我收到了“[Miscrosoft] [ODBC驱动程序管理器]找不到数据源名称,也没有指定默认驱动程序”的错误消息。
我的postgres设置是标准的,我只是按照他们网站上的说明创建了一个本地RDBMS进行测试。
有人能告诉我为什么我不能连接和运行查询吗?到目前为止,没有任何解决方案奏效。谢谢。