问题描述
- 初学ORACLE数据库,关于非空约束问题请教大家。
-
建表的时候有些字段设置了not null,但是插入记录时并没有哪一行插入记录,为什么会报错了?01400,
比如所有A/B/C三个字段,A设置类not null 但是我要插入记录时并不需要给A插入记录,只想给B/C插入记录。insert int table_name(b,c) values(value1,values2);
这样,报错了,无法将null插入A这个很不理解,请求大神,帮助一下。
解决方案
你已经把A设置为非空了,当插入这个表的时候,其他的字段有内容,A为空的话,就变成不确定了,与约束相违背。
解决方案二:
你A已经约束不为空,就不能为null,如果想让A为空,可以用disable暂时禁用约束,等到又要用到约束时enable就行了,注意:启用约束时enable novalidate constraint,即不对前面已有的记录进行约束验证
时间: 2024-11-02 21:29:13