2012-05-31 3 views
3

У меня PostgreSQL работает на localhost. У меня установлен драйвер psqlODBC. Теперь, когда я пытаюсь подключиться к серверу, используя pyodbc как:Подключение к PostgreSQL с использованием pyodbc

import pyodbc 
connection = pyodbc.connect("DRIVER={psqlOBDC};SERVER=localhost;DATABASE=weather;UID=postgres;PWD=password") 

, но я получаю эту ошибку:

Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
pyodbc.Error: ('08001', '[08001] Already connected. (202) (SQLDriverConnect)') 

Что проблема?

Спасибо.

+0

Почему вы не используете родной драйвер? – fog

+0

Я снова столкнулся с той же проблемой. Когда я установил postgressql на ubuntu, он работал хорошо, но когда я устанавливаю его на свой Mac и использую вышеуказанный код, я получаю ту же ошибку. Я использую ODBC, поэтому необходим драйвер OBDC, не так ли? То, что должно быть сделано. – ashokadhikari

ответ

3

Конечно, вы должны установить драйвер ODBC. Я не знаю Mac, но в Windows есть ODBC Manager, где вы настраиваете Источники данных. Для драйвера PostgreSQL есть также кнопка «Тест», чтобы проверить, можно ли установить соединение.

Как заметил туман, вы также можете использовать другие технологии для подключения к PostgreSQL. Если вы можете использовать Jython, вы можете использовать JDBC-драйвер. Существуют также собственные драйверы, такие как psycopg, PyGreSQL и pg8000 (чистый Python). Можете ли вы дать им попробовать?

Смежные вопросы