我收到了一条包含data_type = VARCHAR2的列消息。它已经存储了一些数据。我希望此列的类型为NCLOB。此列的代码集应为UTF-8。
我做了以下事情:
tempmessage
tempmessage
tempmessage
重命名为消息然后我尝试了我的集成测试,我得到了例外: java.sql.BatchUpdateException:ORA-01400:无法插入NULL(“BATCH_LOG”。“MESSAGEOLD”)。
我做错了什么?
答案 0 :(得分:0)
原始列定义为NOT NULL
,当您将其重命名为MESSAGEOLD
时,保留了此约束。您需要从MESSAGEOLD
列中删除NOT NULL约束:
ALTER TABLE foo MODIFY MESSAGEOLD NULL;