A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 许庭洲 黑马帝   /  2012-10-9 08:34  /  1210 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

T_Debt 表:
FNumber           FAmount              FPerson
1                       200.00                  jim
2                       300.00                  jim
3                       123.00                  Tom


非空约束对数据更新的影响
正如"非空约束"表达的意思,如果对一个字段加了非空约束,那么是不能将这个字段中的值更新为NULL的。T_Debt表的FAmount字段是非空约束的,如果执行下面SQL:

UPDATE T_Debt set FAmount = NULL WHERE FPerson = 'Tom'

这句SQL为FAmount设置空值。执行这句SQL以后数据库系统会报出类似如下的错误信息
不能将值NULL插入列'FAmount',表'demo.dbo.Debt';列不允许有空值。UPDATE失败。
如果为FAmount设置非空值的话,则会插入成功,执行下面的SQL:

UPDATE T_Debt set FAmount = 223 WHERE FPerson = 'Tom'

此句SQL则可以正常的执行成功。执行SELECT * FROM T_Debt来查看表中的数据:

FNumber           FAmount               FPerson
1                       200.00                  jim
2                       300.00                  jim
3                       223.00                  Tom

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马