我正在尝试将数据插入表中。当我尝试将空字符串插入Textfield时,我收到invalid input syntax for integer
错误消息。
其他文本字段可以正常使用空字符串。
我的代码:
cur_p.execute("""
INSERT INTO a_recipient (created, mod, agreed, address, honor)
VALUES (current_timestamp, current_timestamp, current_timestamp, %s, %s)""", (None, None))
psycopg2.DataError: invalid input syntax for integer: ""
LINE 35: ... '', ''..
如果删除值中的最后current_timestamp
以及agreed
,代码就可以正常工作,但如果我将其放回原位,则会重新显示错误消息。
我检查了在这里打开的其他线程,我发现了这个,但问题是关于数组input error: integer中的值
有什么建议吗?
答案 0 :(得分:1)
所以这里似乎有一些问题。
首先,在您的INSERT INTO
中,您有五个列,您可以命名(创建,修改等),但在VALUES
语句(%s, %s)
中,您只有两个变量。
我不知道列的数据类型是什么,但错误可能是因为您尝试将空字符串''
插入到整数字段中。尝试使用None
而不是空字符串。 Psycopg2将Python None对象转换为SQL NULL。
在#34;荣誉"之后,我也不认为你需要尾随的逗号。