数据完整性约束-主键约束
Sname
nvarchar(10) ,
Sex nchar(1) ,
Birth date,
ClassNo nvarchar(10) )
主键约束(PRIMARY KEY)
方法二:在创建表时设置主键,使用表级约束。
CREATE TABLE Student
(Sno
nvarchar(15) ,
Sname nvarchar(10) ,
实例1:设置Student学生表的主键。 Student表中包括Sno,Sname,Sex,Birth、ClassNo5个字段,
Sno学号是这张表的唯一标识,把它设置为主键。
主键约束(PRIMARY列级约束。
CREATE TABLE Student
(Sno nvarchar(15) PRIMARY KEY,
主键约束(PRIMARY KEY)
删除主键约束 1. 通过SQL语句删除student学生表中的主键约束PK_student。
Alter Table Student Drop Constraint PK_student 2. 使用图形化界面删除主键约束。
小结
数据完整性 约束(一)
数据完整性 约束
Sex nchar(1) ,
Birth
date,
ClassNo nvarchar(10),
constraint Pk_ Student Primary Key(Sno) )
表级约束语法格式为:constraint 主键约束名 Primary Key(主键名)
主键约束(PRIMARY KEY)
实例2:设置Score成绩表的主键。 分析:
非空约束(NOT NULL), 唯一约束(UNIQUE), 默认值约束(DEFAULT)。
主键约束(PRIMARY KEY)
主键约束用于满足实体完整性,要求主键列数据唯一,并且不允许为 空,主键约束的命名推荐使用“PK_表名”的命名格式,方便后续使用时 进行识别。 主键约束的设置可以通过图形化界面和SQL语句两种方式: 1. 使用SQL语句设置主键
实体完整性
域完整性
参照完整性 用户自定义完整
性
主键约束
创建主键约束 删除主键约束
主键约束(PRIMARY KEY)
方法二:在创建表时设置主键,使用表级约束。 CREATE TABLE Score (Sno nvarchar(15), Cno nvarchar(10), Uscore numeric(4,1), EndScore numeric(4,1), constraint Pk_Score Primary Key(Sno, Cno))
s011180106 陈骏
男
2000/7/5 0111801
s012190118 陈天明
男
2000/7/18 0121901
外键
Student
ClassNo ClassName Specialty EnterYear
Dno
主键
0111801
网络3181
计算机网络技 术
2018
D01
0121901 软件3191
Score成绩表包含的字段有4个Sno学号,Cno课程编号,Uscore平时 成绩和EndScore期末成绩,这张表存储了学生选课的数据信息,将学号和 课程编号这两个字段组合作为Score成绩表的主键。
主键约束(PRIMARY KEY)
方法一:在创建表时设置主键,使用列级约束。 CREATE TABLE Score (Sno nvarchar(15), Cno nvarchar(10) Primary Key(Sno,cno), Uscore numeric(4,1), EndScore numeric(4,1), )
数据完整性
3. 参照完整性:参照完整性是基于外键的,如果表中存在外键,则外
键的值必须与主表中的某条记录的被参照列的值相同,参照完整性用于确
保相关联表之间的数据保持一致。当添加、删除或修改数据表中记录时,
可以借助于参照完整性来保证相关表之间数据的一致性。
主键
Sno
Sname
Sex
Birth ClassNo
软件技术
2019
D01
Class
数据完整性
4. 用户自定义完整性: 用户自定义完整性约束就是针对某一具体关系数据库的约束条件,
它反映某一具体应用所涉及的数据必须满足的语义要求。 如何实现数据完整性,可以通过为表的字段设置约束来保证表中数据完 整性。
数据完整性
约束包括六种: 主键约束(PRIMARY KEY) 检查约束(CHECK) 外键约束(FOREIGN KEY)
1. 实体完整性: 实体完整性要求如果属性A是关系R的主属性,则属性A不能取空值。
实体完整性用于保证关系数据库表中的每条记录都是唯一的,建立主键的 目的就是为了实现实体完整性。
2. 域完整性: 用来保证数据的有效性,它可以限制录入的数据与数据类型是否一致,
规定字段的默认值,设置字段是否可以为空,域完整性可以确保不会输入 无效的数据。
主键约束(PRIMARY KEY)
方法三:在修改表时,设置主键。 ALTER TABLE Student ADD CONSTRAINT PK_Student PRIMARY KEY(Sno)
主键约束(PRIMARY KEY)
通过图形化界面设置主键约束: 实例1:设置学生表Student的主键。 实例2:设置成绩表Score的主键。
数据完整性约束(一)
—— SQL Server 2016数据库及应用
数据完整性
由于数据库中的数据是从外界输入的,然而数据的输入由于种种原因, 会发生输入无效或错误信息,数据的完整性正是为了保证输入的数据符 合规定而提出的。
数据完整性分为四类: 实体完整性、域完整性、参照完整性和用户自定义完整性。
数据完整性