数据完整性及实现课件_第1页
数据完整性及实现课件_第2页
数据完整性及实现课件_第3页
数据完整性及实现课件_第4页
数据完整性及实现课件_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5 章 数据完整性及实现本章重点:数据完整性数据完整性实现默认值第5 章 数据完整性及实现本章重点:5.1 数据完整性5.1.1 数据完整性概述5.1.2 数据完整性的分类5.1 数据完整性5.1.1 数据完整性概述5.1.1 数据完整性概述 数据完整性(Data Integrity)是指存储在数据库中的数据的一致性、准确性和可靠度。换言之,实施数据完整性的目的就是为了确保数据库中数据的质量。 数据完整性的设计是评估数据库设计好坏的一个重要指标。在SQL Server系统中,在设计数据库和设计表时,设计者就要确认每列对应哪些数据是正确的,使用什么方法可以不会有错误的数据存到列中。数据完整性为

2、我们提供了这样的保障,其类型有4种。5.1.1 数据完整性概述 数据完整性(Data 5.1.1 数据完整性概述5.1.1 数据完整性概述5.1.2 数据完整性的分类 1.域完整性(Domain Integrity)要求存入表中指定列的数据一定有效。域完整性通常是用来检验某列的数据的有效性。 2.实体完整性(Entity Integrity)要求表中所有行有一个标识符(主键),其值不能空值(NULL),且能唯一地标识对应的行。 3.参照完整性(Referential Integrity)是指添加、修改或删除数据行时,两个表的主键和外键的数据的一致性。 4.用户自定义完整性(User-Defin

3、ed Integrity)是用户自行定义的,不属于其它完整性的所有规则。5.1.2 数据完整性的分类 5.1.2 数据完整性的分类 1.域完整性(Dom5.2 数据完整性实现5.2.1 域完整性的实现5.2.2 实体完整性的实现5.2.3 参照完整性的实现5.2 数据完整性实现5.2.1 域完整性的实现5.2.1 域完整性的实现1.利用企业管理器创建、删除CHECK 约束操作步骤如下:(1)启动SQL Server企业管理器。(2)展开“SQL Server组”,展开“数据库”,选择使用的数据库,再展开“表”。(3)选择创建约束的表,单击鼠标右键,打开快捷菜单。(4)选择“设计表”菜单命令。(

4、5)单击鼠标右键,打开快捷菜单。(6)选择“CHECK 约束”菜单命令,进入“属性”窗口。(7)选择“CHECK约束”选项卡,命名约束名,输入约束表达式。5.2.1 域完整性的实现1.利用企业管理器创建、删除CH5.2.1 域完整性的实现2.利用CREATE命令创建CHECK约束SQL命令格式: CREATE . (Column_name Datatype NOT NULL | NULL DEFAULT Constraint_Expression Check_name CHECK ( Logical_Expression ) )命令功能:创建一个表,并定义数据完整性。5.2.1 域完整性的实现

5、2.利用CREATE命令创建CHExampleCREATE TABLE SC(Sno CHAR(6) NOT NULL FOREIGN KEY REFERENCES S(Sno), Cno CHAR(6) NOT NULL, Grade Smallint default 0,CONSTRAINT k1 CHECK(Grade BETWEEN 0 AND 100) ,PRIMARY KEY(Sno,Cno),FOREIGN KEY(Cno) REFERENCES C(Cno) )ExampleCREATE TABLE SCCREATE TABLE SC(Sno CHAR(6) NOT NULL,

6、 Cno CHAR(6) NOT NULL, Grade Smallint CHECK(Grade BETWEEN 0 AND 100) , CONSTRAINT pk PRIMARY KEY(Sno, Cno), FOREIGN KEY(Sno) REFERENCES S(Sno), FOREIGN KEY(Cno) REFERENCES C(Cno) )CREATE TABLE SC5.2.1 域完整性的实现,命令改、删除check3.利用SQL命令修改CHECK约束SQL命令格式: ALTER TABLE ADD CONSTRAINT Check_name CHECK (Logical_

7、expression) 命令功能:修改表结构,并可以定义数据完整性。4.利用SQL语句删除CHECK约束SQL命令格式: ALTER TABLE DROP CONSTRAINT Check_name 命令功能: 修改表结构,并可以删除数据完整性。5.2.1 域完整性的实现,命令改、删除check3.利用ALTER TABLE 表名 ADD 新列名 数据类型 完整性约束 DROP 完整性约束名 DROP COLUMN 列名 ALTER COLUMN 列名 数据类型新增的属性不能定义为“NOT NULL”因为关系的原来元组在新列上的值取空值。ALTER TABLE 表名 语句例子,可以写在一行中A

8、LTER TABLE 学生 ADD 入学时间 DatetimeALTER TABLE 学生 ALTER COLUMN 出生日期 DatetimeALTER TABLE 学生 DROP COLUMN 所属系语句例子,可以写在一行中ALTER TABLE 学生 语句例子 DROP TABLE语句删除基本表DROP TABLE语句删除基本表当某个表不再需要时,可以删除。 一般格式: DROP TABLE 表名例: DROP TABLE S 语句例子 DROP TABLE语句删除基本表DROP T5.2.2 实体完整性的实现1.利用企业管理器创建PRIMARY KEY约束 操作步骤如下: (1)启动S

9、QL Server企业管理器。 (2)展开“SQL Server组”,展开“数据库”,选择使用的数据库,再展开“表”。 (3)选择要创建约束的表,单击鼠标右键,打开快捷菜单。 (4)选择“设计表”菜单命令,进入“设计表”窗口。 (5)选择要创建约束的列(学号),单击鼠标右键,打开快捷菜单。 (6)选择“索引/键”菜单命令,进入“属性”窗口。 (7)选择“索引/键”选项卡,首先,单击“新建”按钮,然后,命名索引名,选择索引列,及索引顺序,选择索引文件组,最后,单击“关闭”按钮,返回“设计表”窗口。5.2.2 实体完整性的实现1.利用企业管理器创建PRIM5.2.2 实体完整性的实现2.利用企业管

10、理器创建UNIQUE约束 操作步骤如下: (1)启动SQL Server企业管理器。 (2)展开“SQL Server组”,展开“数据库”,选择使用的数据库,再展开“表”。 (3)选择要创建约束的表(,单击鼠标右键,打开快捷菜单。 (4)选择“设计表”菜单命令,进入“设计表”窗口。 (5)选择要删除约束的列,单击鼠标右键,打开快捷菜单。 (6)选择“索引/键”菜单命令,进入“属性”窗口。 (7)选择“索引/键”选项卡,首先,单击“新建”按钮,然后,命名索引名,选择索引列及索引顺序,选择索引文件组,选择创建UNIQUE前的复选框,最后,单击“关闭”按钮,返回“设计表”窗口。5.2.2 实体完整性

11、的实现2.利用企业管理器创建UNIQ5.2.2 实体完整性的实现3.利用企业管理器删除PRIMARY KEY约束、删除UNIQUE约束操作步骤如下: (1)启动SQL Server企业管理器。 (2)展开“SQL Server组”,展开“数据库”,选择使用的数据库,再展开“表”。 (3)选择要创建约束的表,单击鼠标右键,打开快捷菜单。 (4)选择“设计表”菜单命令,进入“设计表”窗口。 (5)选择要删除约束的列,单击鼠标右键,打开快捷菜单。 (6)选择“索引/键”菜单命令,进入“属性”窗口。 (7)首先,选择“索引/键”选项卡,然后,单击“删除”按钮,最后在单击“关闭”按钮,返回“设计表”窗口

12、。5.2.2 实体完整性的实现3.利用企业管理器删除PRIM5.2.2 实体完整性的实现 修改主键5.利用SQL语句创建、删除PRIMARY KEY和UNIQUE约束SQL命令格式:ALTER TABLE DROP CONSTRAINT Check_name 命令功能:修改表结构,并删除数据完整性。6.利用SQL语句修改PRIMARY KEY约束SQL命令格式:ALTER TABLE Table_name ADD CONSTRAINT constraint_name PRIMARY KEY CLUSTERED | NONCLUSTERED ( column ,.n )命令功能:修改表结构,并可

13、增加数据完整性。5.2.2 实体完整性的实现 修改主键5.利用SQL语句创ALTER TABLE teststu ADD CONSTRAINT firstcheck CHECK ( testsex=女 or testsex=男 ) ALTER TABLE teststu 5.2.3 参照完整性的实现 利用菜单方式建关系图 1.利用企业管理器定义表间的参照完整性 操作步骤如下: (1)启动SQL Server企业管理器。 (2)在“控制台根目录”窗口,展开“SQL Server组”,展开“数据库”,选择使用的数据库,再展开“表”。 (3)在“控制台根目录”窗口,选择“表”,单击鼠标右键,打开快捷

14、菜单。 (4)在快捷菜单中,选择“新建表”菜单命令,进入“设计表”窗口。 (5)在“设计表”窗口,设计表的结构。5.2.3 参照完整性的实现 利用菜单方式建关系图 5.2.3 参照完整性的实现 (6)重复(3)-(5)的操作,在“设计表”窗口,设计表的结构。 (7)在“控制台根目录”窗口,选择“关系图”,单击鼠标右键,打开快捷菜单。 (8)在快捷菜单中,选择“新建数据库关系图”菜单命令,进入“新关系图”窗口,并打开“创建数据库关系的向导”。 (9)在“创建数据库关系的向导”各窗口,依次添加要建立关系的表,返回“新关系图”窗口。 (10)在“新关系图”窗口,首先,选择外键列,将其拖到主键列处,进

15、入“创建关系”窗口。 (11)在“创建关系”窗口,首先,确定“关系名”,然后,选择其它参数,最后,单击“确定”按钮,返回“新关系图”窗口,结束创建参照完整性的操作。5.2.3 参照完整性的实现 (6)重复(3)-(55.2.3 参照完整性的实现 语句建关系2.利用SQL语句创建参照完整性SQL命令格式:CREATE TABLE ( 类型 (长度) 缺省值列级约束 , 数据类型缺省值列级约束. ,UNIQUE(列名,列名.) ,PRIMARY KEY(列名,列名) ,FOREIGN KEY (列名,列名) REFERENCES 表名(列名,列名) ,CKECK (条件) )命令功能:创建表结构,

16、并创建数据完整性。5.2.3 参照完整性的实现 语句建关系2.利用SQL语句5.2.3 参照完整性的实现3.利用SQL语句修改参照完整性SQL命令格式:ALTER TABLE ADDCONSTRAINT Constraint_name FOREIGN KEY( Column ,.n )命令功能:修改数据完整性。5.2.3 参照完整性的实现3.利用SQL语句修改参照完整5.3 默认值5.3.1 创建修改默认值约束5.3.2 修改默认值约束5.3 默认值5.3.1 创建修改默认值约束5.3.1 创建默认值约束创建默认值约束SQL命令格式:CREATE TABLE CONSTRAINT constr

17、aint_name DEFAULT constraint_expression 命令功能:创建表,并创建默认值约束。5.3.1 创建默认值约束创建默认值约束CREATE TABLE table4test2(col1 char(10) default 2015) CREATE TABLE table4test25.3.2 修改默认值约束修改默认值约束SQL命令格式:ALTER TABLE ADDCONSTRAINT Constraint_name DEFAULT constraint_expression 命令功能:修改表结构,并创建默认值约束。ALTER TABLE teststuADD CONSTRAINT coldefaultdefault 2013 for testname5.3.2 修改默认值约束修改默认值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论