我需要連接到一箇舊的PostGreSQL數據庫(版本7.3),並且我在XP機器上使用Python 3.2。 py-postgresql包似乎是合適的,但它似乎只使用3.0協議,該協議在7.4版本中實現。我想用Python連接到這個數據庫,但是當我嘗試過時,我收到了一個意外的EOF錯誤,我相信這是使用新協議的包的結果。在Python中連接到PostGreSQL 7.3數據庫
我可以使用pgAdminIII程序連接到數據庫就好了。有任何想法嗎?
我需要連接到一箇舊的PostGreSQL數據庫(版本7.3),並且我在XP機器上使用Python 3.2。 py-postgresql包似乎是合適的,但它似乎只使用3.0協議,該協議在7.4版本中實現。我想用Python連接到這個數據庫,但是當我嘗試過時,我收到了一個意外的EOF錯誤,我相信這是使用新協議的包的結果。在Python中連接到PostGreSQL 7.3數據庫
我可以使用pgAdminIII程序連接到數據庫就好了。有任何想法嗎?
嘗試用PyGreSQL:
PyGreSQL是一個Python模塊, 接口PostgreSQL數據庫。 它嵌入PostgreSQL查詢庫 ,以便於使用Python 腳本中功能強大的 PostgreSQL功能。
當前版本的PyGreSQL 4.0需要 上面的PostgreSQL 7.2和Python 2.3或 。
編輯:
我取得對抗的PostgreSQL 7.3一些測試(從source在Debian擠壓編譯),我看到它工作得很好。我只在postgresql.conf中改變一個屬性,以使本地連接的Python下工作良好:
unix_socket_directory = '/var/run/postgresql'
,使用python-pygresql包後(4.0.2版本):
import pg
con1 = pg.connect('postgres', None, 5440, None, None, 'postgres', None)
con1.query('SELECT version()')
version
--------------------------------------------------------------------------------
PostgreSQL 7.3.21 on i686-pc-linux-gnu, compiled by GCC gcc (Debian 4.4.5-8) 4.4
(1 row)
con1.query('SELECT width, height FROM box')
width|height
-----+------
10 |15
18 |25
(2 rows)
我結束了使用從pywin32 ODBC 。它似乎經常崩潰python,但我會在以後找出一個。 – Vatsu1 2011-06-12 17:58:08