1 / 19
文档名称:

Chapter7数据完整性.ppt

格式:ppt   大小:532KB   页数:19页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Chapter7数据完整性.ppt

上传人:wz_198613 2017/10/9 文件大小:532 KB

下载得到文件列表

Chapter7数据完整性.ppt

相关文档

文档介绍

文档介绍:1
第7章数据完整性
本章教学内容概要
约束
默认值
规则
标识列
约束
概述
数据完整性是指数据的正确性、有效性和一致性。
数据完整性分类:域完整性、实体完整性、参照完整性和用户自定义完整性。
域完整性
指给定列输入值的有效性。
强制域有效性的方法有:数据类型、FOREIGN KEY 约束、CHECK 约束、DEFAULT 定义、NOT NULL 定义和规则。
实体完整性
将行定义为特定表的唯一实体。
实现机制:索引、UNIQUE 约束、PRIMARY KEY 约束或 IDENTITY 属性。
参照完整性
又称引用完整性,它基于外键与主键之间或外键与唯一键之间的关系。
实现机制: PRIMARY KEY 约束、FOREIGN KEY约束和触发器。
用户自定义完整性
所有的列级和表级约束、存储过程和触发器
约束
约束
定义数据的有效性规则,保证数据库中数据完整性。
SQL Server 2005提供六类约束
PRIMARY KEY约束
FOREIGN KEY 约束
UNIQUE约束
CHECK约束
DEFAULT约束
NOT NULL约束
约束
用SQL Server Management Studio管理约束
在“表设计器”中,可定义NOT NULL。
在“列属性”的“默认值或绑定”中可定义DEFAULT约束
使用工具栏中的按钮(快捷菜单也可以设置)
“设置主键”—PRIMARY KEY
“关系”—FOREIGN KEY
“管理索引和键”—UNIQUE
“管理CHECK约束”—CHECK约束。
约束
列名
说明
数据类型
字节数
空否
默认值
备注
XH
学号
char
9

主键,引用列XS(XH)
KCH
课程号
char
5

主键,引用列KC(KCH)
PSCJ
平时成绩
decimal
5
60
0≤PSCJ≤100,1位小数
SJCJ
实践成绩
decimal
5
60
1位小数
QMCJ
期末成绩
decimal
5
0
1位小数
ZP
总评
decimal
5
计算列
列名
说明
数据类型
字节数
空否
备注
KCH
课程号
char
5

主键
KCMC
课程名称
varchar
20

LB
课程类别
varchar
10

分为公共课、基础课、专业课
XSS
学时数
int
4
XF
学分
smallint
2
用SQL Server Management Studio创建如下两表:
总评= 平时成绩* + 实践成绩* + 期末成绩*
在CREATE TABLE语句中定义约束
CREATE TABLE 表名
( 列名数据类型{ NULL | NOT NULL }
[CONSTRAINT 约束名]
{ { PRIMARY KEY| UNIQUE }
| [FOREIGN KEY] REFERENCES 参照表(参照列)
| DEFAULT 常量表达式
| CHECK(逻辑表达式)
| IDENTITY [ ( seed , increment ) ]}
)
约束
列名
说明
数据类型
字节数
空否
默认值
备注
XH
学号
char
9

主键,引用列XS(XH)
KCH
课程号
char
5

主键,引用列KC(KCH)
PSCJ
平时成绩
decimal
5
60
0≤PSCJ≤100,1位小数
SJCJ
实践成绩
decimal
5
60
1位小数
QMCJ
期末成绩
decimal
5
0
1位小数
ZP
总评
decimal
5
计算列
列名
说明
数据类型
字节数
空否
备注
KCH
课程号
char
5

主键
KCMC
课程名称
varchar
20

LB
课程类别
varchar
10

分为公共课、基础课、专业课
XSS
学时数
int
4
XF
学分
smallint
2
用Transact-SQL 语句创建如下两表:
总评= 平时成绩* + 实践成绩* + 期末成绩*
在ALTER TABLE语句中管理列级约束
ALTER TABLE 表名
ADD 列名数据类型[ CONSTRAINT 约束名]
{ DEFAULT 常量表达式
| CHECK ( 逻辑表达式)
| { PRIMARY KEY | UNIQUE}
   | F