第8章数据完整性剖析
8.3 使用约束实施数据完整性 8.3.2 外键约束 外键约束定义了表与表之间的关系。通过将一个表中一列或多列添加到另一个表中,创建两个表之间的连接,这个列就成为第二个表的外键(Foreign Key,FK),即外键是用于建立和加强两个表数据之间的连接的一列或多列,通过它可以强制参照完整性。 当一个表中的一列或多列的组合和其他表中的主键定义相同时,就可以将这些列或列的组合定义为外键,并设定与它关联的表或列。这样,当向具有外键的表插入数据时,如果与之相关联的表的列中没有与插入的外键列值相同的值时,系统会拒绝插入数据。 8.1 使用规则实 施数据完整 性 8.2 使用默认值 实施数据完 整性 8.3 使用约束实 施数据完整 性 8.3 使用约束实施数据完整性 8.3.2 外键约束 定义表级外键约束的语法格式如下: [CONSTRAINT constraint_name] FOREIGN KEY (column_name [,…n ]) REFERENCES ref_table [(ref_column [,…n] )] [ ON DELETE { CASCADE|NO ACTION } ] [ ON UPDATE { CASCADE|NO ACTION } ] ] [ NOT FOR REPLICATION ] 定义列级外键约束的语法格式如下: [CONSTRAINT constraint_name] [FOREIGN KEY] REFERENCES ref_table [ NOT FOR REPLICATION ] 8.1 使用规则实 施数据完整 性 8.2 使用默认值 实施数据完 整性 8.3 使用约束实 施数据完整 性 8.3 使用约束实施数据完整性 8.3.2 外键约束 8.1 使用规则实 施数据完整 性 8.2 使用默认值 实施数据完 整性 8.3 使用约束实 施数据完整 性 【例8-20】 创建一个订货表sell_order1,与例8-18创建的产品表goods1相关联。 CREATE TABLE sell_order1 ( order_id1 char(6) NOT NULL, goods_id char(6) NOT NULL, employee_id char(4) NOT NULL, customer_id char(4)NOT NULL, transporter_id char(4)NOT NULL, order_num float NULL, discount float NULL, order_date datetime NOT NULL, send_date datetime NULL, arrival_date datetime NULL, cost money NULL, CONSTRAINT pk_order_id PRIMARY KEY (order_id1), FOREIGN KEY (goods_id)REFERENCES goods1(goods_id) ) 8.3 使用约束实施数据完整性 8.3.3 唯一性约束 唯一性(unique)约束指定一个或多个列的组合的值具有唯一性,以防止在列中输入重复的值,为表中的一列或者多列提供实体完整性。唯一性约束指定的列可以有NULL属性。主键也强制执行唯一性,但主键不允许空值,故主键约束强度大于唯一约束。因此主键列不能再设定唯一性约束。 定义列级唯一性约束的语法格式如下: [CONSTRAINT constraint_name] UNIQUE [CLUSTERED|NONCLUSTERED] 8.1 使用规则实 施数据完整 性 8.2 使用默认值 实施数据完 整性 8.3 使用约束实 施数据完整 性 8.3 使用约束实施数据完整性 8.3.3 唯一性约束 唯一性约束应用于多列时的定义格式如下: [CONSTRAINT constraint_name] UNIQUE [CLUSTERED|NONCLUSTERED] (column_name [,…n ]) 参数的含义与主键约束的参数含义相同。 唯一性约束与主键约束的区别如下: (1)唯一性约束用于非主键的一列或列组合。 (2)一个表可定义多个唯一性约束,只能定义一个主键约束。 (3)唯一
您可能关注的文档
- 和我一起记.doc
- 第8章_金融工具.ppt
- 第8章_应力与应变状态分析.ppt
- 和田合作社电子商务创建情况的汇报(最后稿).doc
- 第8章信用风险管理--.ppt
- 和田地区建设工程质量监督管理工作手册(打印版)完成.docx
- 和田地区建设局底商住宅楼工程2010042323:07:14副本.doc
- 第8章其他射线检测方法和技术(文).ppt
- 和声为旋律配和声.ppt
- 和田地区红枣产业化发展现状及对策分析(二稿老师修改).doc
- (2026春新版)部编版八年级语文下册《第一单元》PPT课件.pptx
- 2018电力监控系统网络安全监测装置技术规范.docx
- 2022电力监控系统安全防护方案审核要点.docx
- 2014电力电缆光伏系统EN 50618欧标.docx
- (2026春新版)人教版二年级数学下册《第三单元 万以内数的认识》教案.docx
- (2026春新版)人教版二年级数学下册《第四单元 万以内的加法和减法》教案.docx
- (2026春新版)人教版二年级数学下册《综合与实践 时间在哪里》教案.docx
- (2026春新版)苏教版二年级数学下册《综合与实践 时间有多长》教案 .pdf
- (2026春新版)部编版三年级语文下册第3单元(教案).docx
- (2026春新版)部编版三年级语文下册第8单元(教案).docx
原创力文档

文档评论(0)