簡體   English   中英

使用Python連接到PostgreSQL

[英]Connect to PostgreSQL using Python

我正在嘗試使用Python連接到PostgreSQL並遇到很多問題。 我的操作系統是Windows 7,我使用的是postgresql 9.3,以及python 3.3和3.4。

我首先嘗試使用psycopg2,使用以下代碼

try:
    conn = psycopg2.connect("dbname='ravi' user='potsgres' host='localhost' password='***'")
except:
    print ("I am unable to connect to the database")

接下來,我嘗試使用此代碼使用pyodbc進行連接

try:
    connection = pyodbc.connect("DRIVER={psqlOBDC};SERVER=localhost:5432;DATABASE=ravi;UID=postgres;PWD=***")
except:
    print("not working")

沒有聯系。

我已經嘗試了幾件事。 我已經進入環境變量,以確保有postgresql和python的路徑。我嘗試連接到我已經使用pyodbc創建的SQL服務器數據庫,並且能夠連接沒有任何問題。 我已經進入ODBC數據源管理器來測試我已經安裝的PostgreSQL ODBC驅動程序,測試表明連接是成功的。 我不確定這是否相關,但我可以使用geoserver連接到postgresql數據庫而不會出現問題。 我不確定它是ODBC,JDBC還是其他類型的連接。 另外,我最初嘗試使用PHP建立連接,但我對PHP知之甚少,所以我認為我的代碼中有問題。

關於問題可能是什么的任何想法? 我想到了幾個途徑,但無法弄清楚是否有辦法詳細查看阻止連接的錯誤是什么。 此外,我嘗試使用命令行連接到數據庫,但命令行不允許我輸入密碼。

我找到了幾個可能的解決方案,但我要么完全不明白它們的含義,要么應用於linux環境,我不知道這在Windows術語中是什么意思

在psycopg2中打開postgres連接會導致python崩潰

使用pyodbc連接到PostgreSQL

我剛剛開始學習如何編碼,所以如果任何可能的解決方案盡可能簡單,我會非常感激,並且我認為我對計算機幾乎一無所知。 非常感謝您的幫助!

編輯:使用univerio的例子這里是我嘗試使用psycopg2時的錯誤消息我得到以下錯誤SyntaxError: invalid syntax錯誤SyntaxError: invalid syntax但我看不出我弄亂了語法。

如果我嘗試使用pyODBC這里是我得到的錯誤('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

我進入ODBC數據源管理員並將SSL更改為require和allow。 沒有幫助。 此外,驅動程序的名稱實際上是PostgreSQL35W。 添加35W並未更改錯誤消息。

psycopg2根據您鏈接的其他問題獲取關鍵字參數,而不是單個字符串。 只需拿出雙引號即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM