问题描述
我尝试在我的postgresql数据库中插入行/元组列表。所以我找到了函数execute_values()...但是行自动获取ID无效。
我的代码:
query = "INSERT INTO "+ self.table + " VALUES %s"
execute_values(self.cursor,query,row)
self.con.commit()
我数据库的第一列是id,而行元组的第一列是TEXT(数据库中的第二行也是TEXT)
所以我得到了错误:
psycopg2.errors.InvalidTextRepresentation: invalid input Syntax for type integer: "blub"
LINE 1: INSERT INTO whales VALUES ('blub...
所以我想这是因为ID。
我也尝试了模板,但结果却没有任何改善:
database.py",line 204,in insert_row
execute_values(self.cursor,row,"(%(name)s,%(is_member)s)")
File "C:\Just\a\Path\env\lib\site-packages\psycopg2\extras.py",line 1289,in execute_values
parts.append(cur.mogrify(template,args))
TypeError: tuple indices must be integers or slices,not str
也许我看错了文档或者不了解模板...
知道这个问题: 我该如何处理?使用“正常”执行,我不需要添加ID。有没有办法使用execute_values()? 还是唯一通过选择获得ID并将未使用的ID也赋予execute_values的唯一方法?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)