我試圖解析以下參數爲cursor.execute
:IntegrityError:ORA-01400:無法將NULL插入
sql_insert = 'insert into sms_messaging (result_sms, msgid, msgparts) values (:1, :2, :3)'
smsreport_text_new = ('success', '2D67C865FB6FA25A9261C75E8D2F0F2B ', 1)
cursor.execute(sql_insert, smsreport_text_new)
後來我收到以下錯誤信息:
IntegrityError: ORA-01400: cannot insert NULL into ("ADAUTH"."SMS_MESSAGING"."DATE_SMS")
在爲了建立表,我的.sql
文件看起來像這樣:
-- Create template
CREATE TABLE sms_messaging(
date_sms DATE primary key,
result_sms VARCHAR(20),
msgid VARCHAR(128),
msgparts INTEGER,
errorcode INTEGER,
errormessage VARCHAR(128)
);
即使f或者這個特定的sql_insert
沒有date_sms
,錯誤消息指出這個問題。我沒有看到我要出錯的地方。我該如何解決這個問題?
嗨,謝謝,一些小的改進,但仍然沒有解決。我更新了我的參數(就像你說的那樣)(雖然我改變了表格,所以msgid是主鍵,並且省略了日期)。 cursor.execute行有效,但在刷新SQL Developer Table之後,不會顯示這些條目。 cursor.execute行之後沒有錯誤消息。 – pymat
@pymat。 。 。您可能需要提交更改。 –
解決了這個問題 - 謝謝! :o) – pymat