psycopg2.DataError:整数的输入语法无效:“”

时间:2018-05-07 02:39:09

标签: postgresql

我正在尝试将数据插入表中。当我尝试将空字符串插入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中的值

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

所以这里似乎有一些问题。

首先,在您的INSERT INTO中,您有五个列,您可以命名(创建,修改等),但在VALUES语句(%s, %s)中,您只有两个变量。

我不知道列的数据类型是什么,但错误可能是因为您尝试将空字符串''插入到整数字段中。尝试使用None而不是空字符串。 Psycopg2将Python None对象转换为SQL NULL。

在#34;荣誉"之后,我也不认为你需要尾随的逗号。