主关键字约束(Primarykeyconstraint)惟一性约束(Unique
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
主关键字
主关键字指定表的一列或几列的 组合的值在表中具有惟一性,即能 惟一的指定一行记录。该列不允许 为null值。
创建主关键字约束
constraint 约束名称 primary key ( column_name1 …. (最多16列) )
创建主键
--在创建表的时同添加主关键字
单主键:创建一个部门表用部门编号做主关键字。 create table department ( dept_id int not null primary key, dept_name varchar(50) not null, dept_head_id int null )
创建主键 --为现有的表添加主键 为学员表中的学员编号做主关键字
alter table student
add constraint PK_student_id primary key (stu_id)
使用企业管理器创建主键
保 存
唯一性约束
指定一个或多个列的组合值 具有唯一性,以防止在列中输 入重复的值。唯一性约束指定 的列可以有NULL属性。保证 某列数据在表中是唯一的。
缺省约束
在不输入数据的情况下给 列默认一个给定的值。
使用SQL语句创建缺省约束
constraint 约束名称 default 常量表达式 for 列名
创建缺省约束
修改员工表,使家庭住址为缺省 为“暂无”。
alter table employee add constraint con_address
创建外关键字约束
constraint 约束名称 foreign key (column_name1….[最多16列]) references 被引用表名(column_name1….[最多16列]) |on delete {cascade/no action} |on update {cascade/no action}
创建外关键字约束
先创建部门表(以部门编号为主键) create table employee ( emp_id VARCHAR(20) not null, emp_name varchar(20) not null, dept_id int constraint fk_emp_dept foreign key (dept_id) references department(dept_id) on delete cascade on update cascade )
外关键字
外关键字指一张中包 含另一张表中的主键字 段,那么称这个字段为 外关键字。
外关键字说明
emloyee
PK emp_id
emp_name emp_sex FK1 dept_id
department PK dept_id
dept_name dept_head_id
employee表包含department表中的主键 字段dept_id,所以dept_id为employee表与 department表的外关键字。
alter table 表名 drop constraint 约束名
删除主键约束
先修改表 alter table student drop constraint PK_student_id
域完整性
限制数据类型(通过数据类型) 限制格式(通过check约束和规则) 限制可取值范围(通过check约束、 规则、default约束)
唯一性约束
constraint 约束名称 unique ( column_name1…. [最多16列] )
创建唯一性约束
修改员工表,为员工姓名字 段设置唯一性约束。
alter table employee add constraint un_name
unique (emp_name)
删除约束
default '暂无' for address
参照完整性
一张表的主关键字被另一张表包 含。
定义了参照完整性后,不允许进 行如下操作:
在子表中不允许引用父表中不存在的记录 更改父表中的主键,使子表中的记录孤立 删除父表中的主键,使子表中的记录孤立
外关键字约束
为了实现“参照完整性”, 我们可以在两张表之间创建外 关键字约束(即“外键”)。
使用企业管理器创建外关键字约束
单击
用系统存储过程查看约束
sp_helpconstraint 表名
sp_helpconstraint employee
一.五种约束的创建方法 二.用系统存储过程查看约束
主关键字约束(Primary key constraint) 惟一性约束(Unique constraint) 检查约束(Check constraint) 缺省约束(Default constraint) 外关键字约束(Foreign key constraint)
实体完整性
行是表中的实体,表中的行 要具有唯一性,即表中的所有 记录在某一列的值必须取值唯 一(primary key主键约束、 unique唯一性约束)
检查约束
对输入列或整个表中的 值设置检查条件,保证输 入的都是合法数据。
定义检查约束的语法
constrai约束
修改员工表,性别只能输入 男、女两个数。
alter table employee add constraint sex check
(empsex in ('男','女'))
创建主键
--在创建表的时同添加主关键字
复合主键: create table department (
dept_id int not null, dept_name varchar(50) not null, dept_head_id int null constraint pk_dept_id primary key (dept_id) )