一、基于上次创建的教学管理JXGL数据库,实现约束的创建、查看和删除操作。
(1) 建立一个CITY表(CityNo,CityName),将CityNo指定为主键。
用SQL语句创建主键,可使用CREATE TABLE命令完成:

CREATE TABLE CITY(
CityNo char(2) constraint c1 primary key,
CityName varchar(30) not null);

若创建表时没有设置主键,也可以使用ALTER TABLE命令为已存在的表创建主键约束:

alter table CITY add constraint c1 primary key(CityNo)

其中c1为主键约束名称。
(2) 为JXGL数据库中的CITY表,为其“CityName”创建惟一约束。
为已存在的表创建惟一约束,SQL语句如下:

alter table CITY add constraint c2 unique(CityName)

(3) 为JXGL数据库中的SC表,为其“GRADE”创建检查约束。
为已存在的表创建检查约束,SQL语句如下:

alter table SC add constraint c3 check(Grade>='0' AND Grade<='100')

(4) 为JXGL数据库中的STUDENT表,为其“Ssex”创建默认约束’M’。
为已存在的表创建默认约束,SQL语句如下:

alter table STUDENT add constraint c4 default 'M'for Ssex

(5) 为JXGL数据库中的SC表,为其“Sno”创建外键约束。
为已存在的表创建外键约束,SQL语句如下:

alter table SC add constraint c5 foreign key(Sno) references STUDENT(Sno)

(6) 查看约束的定义
在SSMSE中,选择要查看约束的表,打开表设计器,单击鼠标右键,分别选择“索引/键”、“关系”、“CHECK”命令,可以查看各类约束。

select name,type_desc
from sys.objects
where parent_object_id=object_id('SC')

查看约束的表:
数据库操作:数据完整性

select name,type_desc
from sys.objects
where parent_object_id=object_id('SC') and type_desc='FOREIGN_KEY_CONSTRAINT'

查看各类约束:
数据库操作:数据完整性
(7) 删除约束
在SSMSE中,可以删除主键、去掉默认值。单击鼠标右键,分别选择“索引/键”、“关系”、“CHECK”命令,可以删除各类约束。

alter table SC
drop constraint c3

删除约束:
数据库操作:数据完整性
查看默认值:
数据库操作:数据完整性

相关文章: