黑马程序员--SQL入门基础知识--数据的完整性

来源:互联网 发布:闻道网络股票可以买吗 编辑:程序博客网 时间:2024/06/09 16:59

---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------

数据库的完整性是指数据库中的数据的一致性与正确性

SQL Server 2008的表定义支持一下4个完整性约束,分别是:

实体完整性:将行定义为特定表的唯一实体,可以通过设定主键、唯一、标识列等方法来实现;

域完整性:它是对某列上可以使用的有效值的限制,也成为列完整性,即确定一个数据集对某一列是否有效和确定是否允许为空值;

参照完整性:它是用来维护相关数据表之间数据一致性的手段,可使用外键、检查等来实现;

用户自定义完整性:是由用户根据实际应用中的需要自行定义.

--------------------------------------------------------------------------------------------------------

create table Result

(

Studentid varchar(50),

Score float,

CourseId tinyint,

TestDate datetime

)

create table Course

(

CourseId tinyint,

CourseName varchar(50),

CourseHour tinyint,

)

go

--------------------------------------------------------------------------------------------------------

1)Primary key 约束

Alter table Course

add constraint PK_Course_CourseId primary key(CourseId)

2)Unique 约束

Alter table Course

add constraint UK_Course_CourseId unique(CourseId)

3)check 约束

Alter table Result

[with no check]                                                           --如果有不和要求的记录,可以加with no check就可以不检查原来记录

add constraint CK_Result_Score check(Score=>0 and Score<=100)

4)Default约束

Alter table Result

add constraint DK_Result_Score

default 0 for Score

5)Foreign Key约束

Alter table Result

add constraint FK_Result_Student_Studentid foreign key (StudentId) references Student(Studentid)

---------------------- android培训、java培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net/heima