文档详情

SQL管理数据表.ppt

发布:2017-02-15约1.47万字共79页下载文档
文本预览下载声明
* 3.8 删除约束 1.使用SSMS删除表约束 在表设计器的窗口中,可以删除主键,去掉默认值。在表设计器的“属性”窗口中,可以通过切换选项卡,选择约束名称,单击“删除”按钮,分别删除主键约束、外键约束和CHECK约束。 * 3.8 删除约束 * 2.使用DROP命令删除表约束 在T-SQL语言中,也可以方便的删除一个或多个约束,其语法格式为: ALTER TABLE table_name DROP CONSTRAINT constraint_name[,…n] 3.8 删除约束 * [示范案例7] 使用T-SQL语句删除Northwind数据库中CK_Quantity约束。 程序清单如下: ALTER TABLE [order details] DROP CONSTRAINT ck_quantity 3.8删除约束 * 决定使用何种约束 完整性类型 约束类型 描述 域 DEFAULT 如果在INSERT语句中未显式提供值,则指定为列提供的值 CHECK 指定列中可接受的数据值 REFERENCES 基于其他表中的列的值,指定可接受的用于更新的数据值 实体 PRIMARY KEY 惟一标识每一列,确保用户没有输入重复的值。同时创建一个索引以增强性能。不允许空值 UNIQUE 确保在非主键列中不输入重复值,并创建一个索引以增强性能。允许空值 引用 FOREIGN KEY 定义一列或多列的值与同表或其他表中主键的值匹配 CHECK 基于同表中其他列的值,指定列中可接受的数据值 * 规则与CHECK约束的比较 1、check约束比规则更简明,它可以在建表时由create table语句将其作为表的一部分进行指定。 2、规则需要单独创建,然后绑定到列上。 3、在一个列上只能应用一个规则,但是却可以应用到多个check约束。 4、规则的优点是:一个规则只需要定义一次就已可以多次应用,可以应用到多个表或多个列,还可以应用到用户定义的数据类型上。 3.9 使用规则 * 3.9 使用规则 1.创建规则的命令是CREATE RULE,语法格式为: CREATE RULE rule_name AS condition_expression 2.绑定规则其语法格式为 : [EXECUTE] sp_bindrule ‘规则名称’,’表名.字段名’|’ 自定义数据类型名’ * 3.9 使用规则 [示范案例8] 在Northwind数据库中创建规则,名称为region_rule,条件表达式是要求变量在(‘wa’,’ia’,’il’,’ks’,’mo’)范围之内。 程序清单如下: CREATE RULE region_rule AS @region IN (wa,ia,il,ks,mo) * 3.9 使用规则 [示范案例9] 将规则“region_rule”绑定到员工“employees”表中的区域“region”字段 。 程序清单如下: EXEC sp_bindrule region_rule,employees.region * 3.解绑规则其语法格式为: [EXECUTE] sp_unbindrule ’表名.字段名’|’自定义数据类型名’ 4.删除规则其语法格式为: DROP RULE 规则名称[,…n] 3.9 使用规则 * 3.9 使用规则 [示范案例10] 将规则“region_rule”从“employees”表中“region”列解除绑定 。 程序清单如下: EXEC sp_unbindrule employees.region’ * 3.9 使用规则 [示范案例11] 将规则“region_rule”删除 。 程序清单如下: DROP rule region_rule * 1.创建默认的语法格式如下: CREATE DEFAULT default_name AS default_description 2.绑定默认值其语法格式为: [EXECUTE] sp_bindefault ‘默认名称’,’表名.字段名’|’自定义数据类型名’ 3.10 使用默认 * 3.10 使用默认 [示范案例12] 在“Northwind”数据库中创建默认,名称为phone_default ,将其绑定到“customers”表的“phone”字段,使其默认值为“(000)000-0000”。 程序清单如下: CREATE DEFAULT phone_default
显示全部
相似文档