首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

为什么主键update为空不违反not null的约束,该怎么解决

2012-01-14 
为什么主键update为空不违反not null的约束USE SchoolCREATE TABLE Stu_Union(sno CHAR(5) NOT NULL UNIQU

为什么主键update为空不违反not null的约束
USE School
CREATE TABLE Stu_Union(sno CHAR(5) NOT NULL UNIQUE,
  sname CHAR(8),
  ssex CHAR(1),
  sage INT,
  sdept CHAR(20),
  CONSTRAINT PK_Stu_Union PRIMARY KEY(sno) );  
insert Stu_Union values ( '10000','王敏','1',23,'CS');
UPDATE Stu_Union SET sno=' ' WHERE sdept='CS';
为什么sno置为’’没有违反NOT NULL的约束 ?

[解决办法]

探讨
引用:
是的 ''和NULL不能等同的。

那为什么sno的值不是'',好像改不了,是什么原因啊??那''是什么??

[解决办法]
不能修改是因为记录中主键是不能修改的吧
[解决办法]
一般来说,所有的脚本和语言里 空字符串和null都是两个东西。为什么呐?
因为字符串是一个对象,内部有一个字符序列,空字符串也是一个对象,内部的序列里没有字符。
null就是空,没有对象。所以不一样。

热点排行