通过Python连接到Postgres数据库

时间:2017-06-06 10:38:54

标签: python postgresql python-2.7

我正在尝试使用此代码通过Python 2.7连接到我的数据库:

import csv
import psycopg2

try: 
    conn = psycopg2.connect("dbname='student', user='postgres',password='password', host='localhost'")
    cursor = conn_cursor()
    reader = csv.reader(open('last_file.csv', 'rb'))
    print "connected"
except:
    print "not Connected"

它上周确实有效,我们认为我们没有改变任何东西,但现在它不会连接。 我们已经尝试在数据库打开和关闭时使用它,没有任何效果。 该数据库确实存在于Postgres中。

5 个答案:

答案 0 :(得分:0)

异常部分添加如下以查看错误

except Exception as ex:

    print "not Connected"

    print "Error: "+ str(ex)

答案 1 :(得分:0)

试试这个:

df1 = session.read.jdbc(url=self.url,
                        table=self.table,
                        properties={"driver": self.driver,
                                    "user": self.user,
                                    "password": self.password})

答案 2 :(得分:0)

import psycopg2

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



cur = conn.cursor()
cur.execute("""SELECT * from table_name""")
rows = cur.fetchall()
print "\nShow me the data:\n"
for row in rows:
    print "   ", row[0]
    print "   ", row[1]

答案 3 :(得分:0)

好像你的帖子有问题。

尝试查看postgres日志。 默认情况下postgres日志的位置: tail -f /var/log/postgresql/<>/main/postgresql.log 像这样的东西。

另外不要忘记检查防火墙。也许有人偶然禁用它。

答案 4 :(得分:0)

也尝试 pip install PyGreSQL 包。由于 psycopg2(某些版本)受 GPL 许可。开源许可可能会很棘手。仅供参考。