欢迎来到天天文库
浏览记录
ID:51242977
大小:139.50 KB
页数:79页
时间:2020-03-20
《管理表中的数据.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库。
1、管理表中的数据Copyright©2007-2009创智新程Copyright©2007创智新程本课教学内容创建规则创建缺省管理表中的数据插入数据更新数据删除数据将表中的数据存储到新表清空表中数据Copyright©2007创智新程创建规则创建规则任务解题步骤课堂练习Copyright©2007创智新程任务一FOX公司需要对市场进行调查,要构造一个样本客户表,限定样本空间的大小不能超过10000。表SAMPLE_CUSTOMER已经建立了,要求不改变表结构的前提下,可以实现自动对样本空间的限制。表的结构如下:Copyright©2007
2、创智新程任务CREATETABLESample_Customer(CustomerIDINTPRIMARYKEY,CustomerNameCHAR(50),CustomerAddressCHAR(50),CustomerCreditLimitMONEY)Copyright©2007创智新程解题步骤步骤1:确定使用什么方法完成任务。步骤2:确定编写规则的语句。步骤3:创建规则。步骤4:将规则绑定到列。步骤5:验证规则是否生效。Copyright©2007创智新程步骤1利用前述的CHECK约束可以轻松实现上述任务,但是,CHECK约束需要修
3、改表的结构。而规则是一个向后兼容的功能,用于执行一些与CHECK约束相同的功能。CHECK约束是用来限制列值的首选标准方法。CHECK约束比规则简明,一个列只能应用一个规则,但是可以应用多个CHECK约束。Copyright©2007创智新程步骤1所以,在不改变表结构的前提下,使用规则来实施上述任务。Copyright©2007创智新程步骤2创建称为规则的对象的语法如下:CREATERULEruleAScondition_expressionrule是新规则的名称。规则名称必须符合标识符规则。可以选择是否指定规则所有者的名称。Copyr
4、ight©2007创智新程步骤2condition_expression是定义规则的条件。规则可以是WHERE子句中任何有效的表达式,并且可以包含诸如算术运算符、关系运算符和谓词(如IN、LIKE、BETWEEN)之类的元素。规则不能引用列或其它数据库对象。可以包含不引用数据库对象的内置函数.Copyright©2007创智新程步骤2定义规则的条件包含一个变量。每个局部变量的前面都有一个@符号。表达式引用通过UPDATE或INSERT语句需要的值。在创建规则时,可以使用任何名称或符号表示值,但第一个字符必须是@符号示例CREATERUL
5、ErulZipCodeAS@ZipCodeLIKE‘([0-9][0-9][0-9])[0-9][0-9][0-9]-[0-9][0-9][0-9]’Copyright©2007创智新程步骤3步骤3:创建规则CREATERULECheckIDAS@IDBETWEEN0and10000Copyright©2007创智新程步骤4在使用规则之前,需要将规则绑定到相应的列上。具体的语法如下sp_bindrulerule_name,object_name,[FUTUREONLY]参数rule_name由CREATERULE语句创建的规则名称Obj
6、ect_name绑定了规则的表和列或用户定义的数据类型。用户定义的数据类型由sp_addtype来定义的Copyright©2007创智新程步骤4FUTUREONLY只对约束到用户自定义数据类型的规则才使用将规则CheckID绑定到CustomerID列上的命令如下sp_bindruleCheckID,‘Sample_Customer.CustomerID’Copyright©2007创智新程步骤5步骤5:验证规则是否生效通过系统存储过程sp_helptext,可以查询到对于规则的定义。sp_helptextCheckIDCopyrig
7、ht©2007创智新程步骤5输出Text-------------------------CREATERULECheckIDAS@IDBETWEEN0and10000Copyright©2007创智新程步骤5下面利用如下数值向Sample_Customer表插入数据INSERTSample_Customer(CustomerID)VALUES(0)INSERTSample_Customer(CustomerID)VALUES(2345)INSERTSample_Customer(CustomerID)VALUES(9999)INSERT
8、Sample_Customer(CustomerID)VALUES(10001)Copyright©2007创智新程步骤5执行结果CustomerID的值执行结果0执行成功2345执行成功9999执行成功1
此文档下载收益归作者所有