我想在服务器中用psycopg2填充几个数据库我不是root用户(不知道它是否相关)。我的代码看起来像psycopg2.OperationalError:致命:数据库不存在
import json
from psycopg2 import connect
cors = connect(user='jungal01', dbname='course')
req = connect(user="jungal01", dbname='requirement')
core = cors.cursor()
reqs = req.cursor()
with open('gened.json') as gens:
geneds = json.load(gens)
for i in range(len(geneds)):
core.execute('''insert into course (number, description, title)
values({0}, {1}, {2});''' .format(geneds[i]["number"], geneds[i]['description'], geneds[i]['title']))
reqs.execute('''insert into requirement (fulfills)
values({0});''' .format(geneds[i]['fulfills']))
db.commit()
当我执行代码时,我得到了上面的pycopg2错误。我知道这些特定的数据库存在,但我不知道为什么它不会连接到我的数据库。 (侧任务,我也不确定这个提交语句,它应该在for循环中,还是在外循环中?它假设是数据库特定的?)
'insert into course'?这将是一个**表**,而不是一个**数据库** –
也读了关于SQL注入和如何正确使用'执行'和“参数绑定”..提示:'格式'没有必要 –
@ postgres中的cricket_007,表是数据库。模式保持数据库的,但他们并不是特别必要 – Allen