gpt4 book ai didi

python psycopg2 插入 postgresql 帮助

转载 作者:太空狗 更新时间:2023-10-30 00:33:47 25 4
gpt4 key购买 nike

我有以下代码可以插入到我的 postgresql 数据库中

conn = psycopg2.connect("my connection setting are in here")
cur = conn.cursor()
cur.execute('INSERT INTO src_event (location_id, catname, title, name) VALUES (%i, \"%s\", \"%s\", \"%s\")' % (1441, "concert", item['title'], item['artists'] ))

但是,当我运行它时,出现以下错误:

psycopg2.ProgrammingError: column "concert" does not exist
LINE 1: ...(location_id, catname, title, name) VALUES (1441, concert, "...

但是“concert”不是一个列,它是一个值,所以我不明白为什么会出现此错误。

编辑 - 我试过将\"放在值(value)音乐会周围并尝试不使用

如何在不出现此错误的情况下插入我的数据?

最佳答案

你真的,真的不应该使用 python 字符串格式来构建查询——它们很容易出现 SQL injection .而您的实际问题是您使用 "进行引用,而您必须使用 ' 进行引用("引号表/列名等,' 引号字符串)。

改用下面的代码:

cur.execute('INSERT INTO src_event (location_id, catname, title, name) VALUES (%s, %s, %s, %s)', (1441, 'concert', item['title'], item['artists']))

请注意,无论您实际拥有什么类型,都必须使用 %s

另见 http://initd.org/psycopg/docs/usage.html#query-parameters .

关于python psycopg2 插入 postgresql 帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4113910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com