环境:SqlServer 2008

新建一test表,添加两个字段,a字段设置为主键,不为空,唯一;b字段,不做限制。

 

执行insert into test values('','a') ,却执行成功。

记录可查询,a字段确实没有值。

 

有点纳闷,再做insert into test values(null,'a') 的测试。

提示:

主要错误 0x80004005,次要错误 25005
> insert into test values(null,'a')
列不能包含空值。 [ Column name = a,Table name = test ]

 

原来:在SqlServer中不为空的概念只能是Null,跟Oracle还是有很大不同的。望各位注意!

相关文章: