资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,数据完整性,之实体完整性的实现,(2),实体完整性的实现,实体完整性可以通过,索引,IDENTITY,属性来实现,PRIMARY KEY,约束,UNIQUE,约束,一,PRIMARY KEY,约束,通过定义,PRIMARY KEY(,主键,),约束惟一地标识表中记录,每个表都应有一个主键,可以是,一列或列组合,。一个表只能有一个,PRIMARY KEY,约束。,Image,、,text,数据类型的字段不能设置为主键。,PRIMARY KEY(,主键,),约束应遵从规则:,无空值,无重复,值。,当向表中的现有列添加主键约束时,自动检查列中现有的数据是否符合规则。,课外阅读:,一,PRIMARY KEY,约束,1.,用企业管理器定义主键,2,用,T-SQL,语句定义主键,(,1,)创建表时定义主键约束,CREATE TABLE,数据表名,(,列名 数据类型,CONSTRAIN,约束名,PRIMARY KEY,,,),说明:语法格式,1,定义单列主键,【,例,】,创建学生档案表并设置学号列为主键,use,xs,go,create table xsda1,(,学号,char(6)primary key,/*,设置主键*,/,姓名,nchar(4)not null,性别,nchar(1),班级,nvarchar(10),家庭住址,nvarchar(20),出生日期,datetime,入学日期,datetime,),课外阅读:,【,例,】,创建学生档案表并设置学号列为主键,use,xs,go,create table xsda1,(,学号,char(6),primary key,/*,设置主键*,/,姓名,nchar(4)not null,性别,nchar(1),班级,nvarchar(10),家庭住址,nvarchar(20),出生日期,datetime,入学日期,datetime,),一,PRIMARY KEY,约束,CREATE TABLE,数据表名,(CONSTRAIN,约束名,PRIMARY KEY,(,列名,1,n),.),【,例,】,创建学生成绩表并设置组合主键,use,xs,go,create table xscj1,(,学号,char(6),课程编号,char(6),成绩,int,constraint,pk,_,成绩,primary key,(,学号,课程编号,),),(课外阅读:,),一,PRIMARY KEY,约束,(,2,)修改表时定义主键约束,ALTER TABLE,表名,ADD CONSTRAINT,名称,PRIMARY KEY(,列名,1,n),【,例,7.5】,修改表添加组合主键约束,Use,xs,go,alter table,xscj,add constraint,pk,_,成绩,primary key(,学号,课程编号,),注:在添加新的主键约束前,应删除已有主键约束。,一,PRIMARY KEY,约束,(,3,)删除,PRIMARY KEY,约束,ALTER TABLE,表名,DROP CONSTRAINT,约束名,n,【,例,5-19】,删除上例中创建的,PRIMARY KEY,约束。,USE XS,ALTER TABLE KCXX,DROP CONSTRAINT,pk,_,成绩,GO,课外阅读:,二,UNIQUE(,唯一性,),约束,如果要确保一个表中的,非主键列不输入重复值,,应在该列上定义,UNIQUE,约束(唯一约束)。,主键约束与惟一约束的,区别,:,主键约束只能有一个,惟一约束可有多个。,主键约束字段值不允许为,NULL,,而惟一约束字段的值可取,NULL,。,PRIMARY KEY,约束与,UNIQUE,约束的相同点在于:二者均不允许表中对应字段存在重复值。,二,UNIQUE(,唯一性,),约束,1,用企业管理器定义,UNIQUE(,唯一性,),约束,2,用,T-SQL,语句定义,UNIQUE(,唯一性,),约束,(,1,)创建表时定义,CREATE TABLE,数据表名,(,列名 数据类型,CONSTRAIN,约束名,UNIQUE,.),说明:语法格式,1,定义单列唯一约束,【,例,】,创建专业信息表并设置“名称”列为唯一约束,use,xs,go,create table,专业信息表,(,编号,char(6)not null primary key,院系编号,char(4)not null,名称,char(40)not null unique /*,设置唯一约束*,/,),课外阅读:,二,UNIQUE(,唯一性,),约束,语法格式,2,:,CREATE TABLE,数据表名,(CONSTRAIN,约束名,UNIQUE,(,列名,1,n),.n),说明:多列组合唯一约束,二,UNIQUE(,唯一性,),约束,(,2,)修改表时定义,ALTER TABLE,表名,ADD CONSTRAINT,名称,UNIQUE,(,列名,1,n),【,例,】,修改表设置唯一约束,use,xs,go,alter table,专业信息表,add constraint,uq,_,名称,unique(,名称,),go,二,UNIQUE(,唯一性,),约束,(,3,)删除,UNIQUE,约束,ALTER TABLE,表名,DROP CONSTRAINT,约束名,n,【,例,】,删除前面例中创建的,UNIQUE,约束。,USE XS,ALTER TABLE XSDA,DROP CONSTRAINT,uq,_,名称,GO,Thank You!,欢迎大家下次继续关注刘天天讲坛!,
展开阅读全文