尝试在python中连接时出现PostgreSQL错误:无效的dsn:无效的连接选项“username”

时间:2017-12-21 16:20:11

标签: python mysql database postgresql psycopg2

所以我有这个任务: 您在PostgreSQL服务器上有两个可用的抽象报告:postgres://candidate.company.org/company

用户名=候选密码= abc

所以我用这段代码尝试连接数据库:

import psycopg2 as db
conn = db.connect(host='postgres://candidate.suade.org/company', database='randomname', user='candidate', password='abc', port='5432')

但接着我收到错误信息:

ProgrammingError: invalid dsn: invalid connection option "username"

因为用户名是正确的,任何人都可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

您使用的参数不正确。在Postgres中你必须使用这样的东西:

conn = pg.DB(host="localhost", user="USERNAME", passwd="PASSWORD", dbname="DBNAME")

那应该解决它。

答案 1 :(得分:0)

如果您使用psycopg2库连接Postgres DB,则连接字符串应如下所述。

conn = psycopg2.connect(host="localhost",**user = "postgres"**,password = "postgres",database = "postgres") ;

应该是用户而不是用户名。

答案 2 :(得分:0)

请尝试以下解决方案

import psycopg2 as db
conn = db.connect(host='localhost', dbname='randomname', user='candidate', password='abc')