gpt4 book ai didi

python - Postgresql插入多列格式错误的数组文字

转载 作者:行者123 更新时间:2023-11-29 13:11:27 25 4
gpt4 key购买 nike

我正在学习来自 here 的教程,并尝试调整它以传递多个列值。我尝试通过研究错误消息来解决此问题,但每次尝试使用 { 重写值时,我都会遇到一组不同的错误。我做错了什么?

DataError: malformed array literal: "value1" LINE 1: ... public."Texas"(licensenum,businessowner) VALUES ('value1','... ^ DETAIL: Array value must start with "{" or dimension information.

我的代码:

import psycopg2
conn = psycopg2.connect(host="localhost",database="postgres", user="postgres", password="supershinypwdhere")
cur = conn.cursor()
cur.executemany("insert into public.\"Texas\"(licensenum,businessowner) VALUES (%s,%s)", [('value1','value2'),('value3','value4')])
conn.commit()
cur.close()
conn.close()

最佳答案

错误消息表示列 licensenumbusinessowner(或其中之一)是数组。可能它们应该是简单的文本,那么你的程序就会运行良好。但是,如果您真的希望它们是数组,那么您应该传递列表,而不是字符串作为参数,例如:

cur.executemany(
"insert into public.\"Texas\"(licensenum,businessowner) VALUES (%s,%s)",
[(['value1'],['value2']),(['value3'],['value4'])])

关于python - Postgresql插入多列格式错误的数组文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54102438/

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