Я пытаюсь запустить запрос из приложения Microsoft excel и не смог успешно подключиться. У меня PostgreSQL 9.3 на моей локальной машине, и я запускаю 64-битные окна 7. У меня есть пример базы данных dvdrental, которая является демо-базой данных. Мне просто нужно подключиться к базе данных, запустить запрос и просмотреть вывод на моем листе (или в ближайшем окне, либо разрешить проблему подключения). Вот что я до сих пор не работаю.Как подключить VBA к postgreSQL и выполнить запрос
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 для приложений Microsoft Excel Библиотекой 14,0 Объекта OLE Automation Microsoft Office Библиотека 14,0 Объекта Microsoft Forms 2.0 Библиотеки объектов Microsoft Access 14,0 Библиотеки объектов Microsoft ADO Ext. 6,0 для DOL и безопасности Microsoft ActiveX Data Objects 2.8 Library Microsoft Windows Common Confrols 6,0 (SP6)
Когда я выполняю этот метод испытания TestPostgresConnection, я получаю «[Miscrosoft] [ODBC Driver Manager] Источник данных не найден и нет указанного драйвера по умолчанию »
Моя установка postgres была стандартной, и я просто следил за указаниями на своем веб-сайте для создания локальной RDBMS для тестирования.
Может ли кто-нибудь сказать мне, почему я не могу подключиться и выполнить запрос? Ни один из решений не работал до сих пор. Благодарю.
Можете ли вы подключиться к базе данных с помощью стандартных инструментов Postgres?Чтобы устранить неполадки, создайте пустой текстовый файл с расширением .UDL и дважды щелкните его, заполните детали для postgres - это работает? –
Я обнаружил проблему и с тех пор решил проблему. Проблема была решена после загрузки драйвера Postgres ANSI с сайта PostgreSQL. Это привлекло мое внимание после просмотра требований к подключению SQLLite здесь: http://www.codeproject.com/Articles/586361/UsingplusanplusAccess-2cplusMySQL-2cplusPostgreSQL. Спасибо @ElectricLlama – joey