三、在 SQL Server2008中实现数据完整性 SQL Server2008提供了完善的数据完整性机制,主要包括约束、默认值 和规则3类; ·创建及管理约束及约束对象 默认值约束及默认值对象 ·创建及管理规则对象
16 三、在SQL Server 2008中实现数据完整性 SQL Server 2008提供了完善的数据完整性机制,主要包括约束、默认值 和规则3类; • 创建及管理约束及约束对象 • 默认值约束及默认值对象 • 创建及管理规则对象
1、创建及管理约束及约束对象 主键 Primary key约束 惟一值 Unique约束 外键 Foreign key约束 检查 heck约束
17 1、创建及管理约束及约束对象 • 主键Primary key约束 • 惟一值Unique约束 • 外键Foreign key约束 • 检查Check约束
(1)创建及删除主键约束及惟一值约束 单属性构成的码的两种说明方法 定义为列级约束条件,定义为表级约束条件 多个属性构成的码只有一种说明方法 定义为表级约束条件 创建约束方式: 创建表时同时创建 primary ke ey约束或 unique约束 修改表时同时创建 primary key约束或 unique约束
18 (1)创建及删除主键约束及惟一值约束 • 单属性构成的码的两种说明方法 : 定义为列级约束条件,定义为表级约束条件 • 多个属性构成的码只有一种说明方法: 定义为表级约束条件 创建约束方式: • 创建表时同时创建primary key约束或unique约束 • 修改表时同时创建primary key约束或unique约束
①创建表时同时创建 primary key约束或 unique约束 CREATE TABLE table name (column name data type (NULLI NOT NULL) I ICONSTRAINT constraint name PRIMARY KEY unique)
19 ① 创建表时同时创建primary key约束或unique约束 CREATE TABLE table_name (column_name data_type (NULL| NOT NULL) [ [CONSTRAINT constraint_name] { PRIMARY KEY | unique} [, ...n]
EG:创建XSB1表,并对学号字段创建 PRIMARY KEY约束,对姓名字段定义 UNIQUE约束 CREATE TABLE PXSCJ. XSBI CREATE TABLE PXSCJ. XSBI Stu Id char(6) not null PRIMARY KeY Stu ID char(6) not null Sname char(8)not null UNIQUE Sname char(8) not null UNIQUE Ssex bit null Ssex bit null Sdate date null Sdate date null Major char(12)null, Major char(12)null, Credit int null Tcredit int null Remark varchar(500)null Remark varchar(500) null PRIMARY KEY(Stu ID)
20 EG:创建XSB1表,并对学号字段创建PRIMARY KEY约束,对姓名字段定义 UNIQUE约束 CREATE TABLE PXSCJ..XSB1 ( Stu_ID char(6) not null PRIMARY KEY, Sname char(8) not null UNIQUE, Ssex bit null , Sdate date null, Major char(12) null, Tcredit int null, Remark varchar(500) null ); CREATE TABLE PXSCJ..XSB1 ( Stu_ID char(6) not null, Sname char(8) not null UNIQUE, Ssex bit null , Sdate date null, Major char(12) null, Tcredit int null, Remark varchar(500) null, PRIMARY KEY(Stu_ID) );