数据完整性约束.PPT

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据完整性约束

定义基本表(回顾) 使用CREATE TABLE语句实现, 语法格式: CREATE TABLE 表名( 列名 数据类型 [列级完整性约束定义] {,列名 数据类型[列级完整性约束定义] … } [, 表级完整性约束定义 ] ) 修改基本表(回顾) ALTER TABLE 表名 [ ALTER COLUMN 列名 新数据类型] | [ ADD 列名 数据类型 [约束] | [ DROP COLUMN 列名 ] | [ADD [constraint 约束名] 约束定义 | [DROP [constraint] 约束名 ] 删除基本表(回顾) 当确信不再需要某个表时,可以将其删除。 删除表的语句格式为: DROP TABLE 表名 { [, 表名 ] … } 例:删除test表: DROP TABLE test 3.3.2 数据完整性约束 完整性约束条件的作用对象 实现数据完整性 完整性约束条件的作用对象 完整性检查是围绕完整性约束条件进行的,因此,完整性约束条件是完整性控制机制的核心。完整性约束条件的作用对象可以是表、元组和列。 列级约束 元组约束 关系约束 列级约束 列级约束主要是对列的类型、取值范围、精度等的约束,具体包括: 对数据类型的约束:包括数据类型、长度、精度等。 对数据格式的约束:如规定学号的前两位表示学生的入学年份,第三位表示系的编号,第四位表示专业编号,第五位代表班的编号等等。 对取值范围的约束:如学生的成绩取值范围为0~100。 对空值的约束。 元组约束 元组的约束是元组中各个字段之间的联系的约束, 如: 开始日期小于结束日期 某项工作的最低工资小于最高工资 关系约束 指若干元组之间、关系之间的联系的约束。 比如: 学生表中学号的取值不能重复也不能取空值 学生修课表中的学号的取值受学生表中的学号取值的约束 实现数据完整性 实现数据完整性一般在服务器端完成。 在服务器端实现数据完整性的方法主要有两种。 一种是在定义表时声明数据完整性,采用这种方法时可以在定义表的同时定义完整性约束,也可以在定义表之后添加这些约束。 一种是在服务器端编写触发器来实现数据完整性。 实现约束 1. PRIMARY KEY 约束 2. UNIQUE 约束 3. FOREIGN KEY 约束 4. DEFAULT 约束 5. CHECK 约束 工作表 工作表结构 CREATE TABLE 工作表( 工作编号 CHAR(6) NOT NULL, 最低工资 NUMERIC(7,2), 最高工资 NUMERIC(7,2) ) 职工表 职工表结构 CREATE TABLE 职工表( 职工编号 CHAR(7) NOT NULL, 姓名 NCHAR(5) NOT NULL, 工作编号 CHAR(6), 工资 NUMERIC(7,2), 电话号码 CHAR(8) ) PRIMARY KEY 约束 保证实体完整性。 每个表有且只有一个PRIMARY KEY 约束。 格式: ALTER TABLE 表名 ADD [ CONSTAINT 约束名 ] PRIMARY KEY ( 列名 [, … n ] ) 示例 例:对职工表和工作表分别添加主键约束。 ALTER TABLE 职工表 ADD CONSTRAINT PK_EMP PRIMARY KEY (职工编号) ALTER TABLE 工作表 ADD CONSTRAINT PK_JOB PRIMARY KEY (工作编号) UNIQUE 约束 确保在非主键列中不输入重复值。 应用在客观具有唯一性质的列上,如身份证号、社会保险号等。 注意事项: 允许有一个空值。 在一个表中可以定义多个UNIQUE约束。 可以在一个列或多个列上定义UNIQUE约束。 添加UNIQUE约束 语法格式: ALTER TABLE 表名 ADD [ CONSTRAINT 约束名 ] UNIQUE(列名 [, … n] ) 为职工表的“电话号码”列添加UNIQUE约束。 ALTER TABLE 职工表 ADD CONSTRAINT UK_SID UNIQUE(电话号码) FOREIGN KEY约束 实现了参照完整性。 外键所引用的列必须是有PRIMARY KEY约束或UNIQUE约束的列。 格式: ALTER TABLE 表名 ADD [ CONSTRAINT 约束名 ] FOREIGN KEY(列名) REFERENCES 引用表名(列名) 示例 例.为职工表的工作编号添加外键引用约束,此列引用工作表的工作编号列。 AL

您可能关注的文档

文档评论(0)

wumanduo11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档