手机版

SQL数据完整性(2)

发布时间:2021-06-06   来源:未知    
字号:

图 1-1 stu_phone表结构

(2)创建一个规则phone_rule,限制所输入的数据为7位0~9的数字

CREATE RULE phone_rule AS @电话号码like

'[0-9][0-9][0-9][0-9][0-9][0-9][0-9]'

(3)使用系统存储过程sp_hndrule将phone_rule规则绑定到stu_phone表的“电话号码”列上。

sp_bindrule phone_rule,'stu_phone.电话号码'

(4)插入操作输入以下数据:

学号 姓名 电话号码 0009 王国强 1234yyy

是否可以成功插入?如果出现错误,请列出错误信息,为什么会产生该出错信息?如果要实现插入操作,应修改INSERT INTO语句中的哪个值?phone_rule规则能否对其他操作(如DELETE)进行规则检查?

答:○1、插入语句如下:

INSERT INTO stu_phone(学号,姓名,电话号码) VALUES('0009','王国强','1234yyy')

2、插入出错,错误信息如下: ○

消息513,级别16,状态0,第1 行

列的插入或更新与先前的CREATE RULE 语句所指定的规则发生冲突。该语句已终止。冲突发生于数据库'studentsdb',表'dbo.stu_phone',列'电话号码'。 语句已终止。

3、出现错误的原因:在于电话号码的输入不对,因为电话号码绑定的规则是7位0-9○

的数字。

4、修改:将电话号码中的字母改为数字即可,代码如下 ○

INSERT INTO stu_phone(学号,姓名,电话号码) VALUES('0009','王国强','1234567') 执行结果如下:

5、不能,代码如下: ○

SQL数据完整性(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)