混乱的NULL和NOT NULL
发布网友
发布时间:2022-04-16 03:25
我来回答
共2个回答
热心网友
时间:2022-04-16 04:54
呵呵,第一次看到有人讨论 NOT NULL 和 NULL ,为此我还亲自试了试,其实没有那么复杂。首先我要说第一种是对的。
设计表时,
如果这个列不能为空,那么设置为NOT NULL
如果这个列可以为空,那么设置为 NULL,或者不设置
其实设置为 NULL,或者不设置,那么效果都是一样的,所以没必要设置 NULL,我以前从没有用过 NULL
所以呢,USERNAME应该是NOT NULL
附上测试语句
create table aaaaa
( a1 char(1) null,
a2 char(1) not null,
a3 char(1)
)
insert into aaaaa(a1,a2,a3)
values('a','b','c');
insert into aaaaa(a1,a2,a3)
values('','b','');
insert into aaaaa(a2)
values('b');
都是ok
热心网友
时间:2022-04-16 06:12
第一种是完全正确的,当字段设置为NOT NULL 时,增加记录时必须为该字段一个合法的值,否则会报错。
所以呢,USERNAME应该是NOT NULL