实验3吴树森SQL(2)

2019-04-01 16:04

3.据SQL SERVER提供的完整性功能自行设计实验完成完整性实践

SQL SERVER提供的数据库完整性包括域完整性(CHECK,DEFAULT,UNQUE,RULE,用户自定义类型、基本数据类型)、表间完整性(复习实体完整性、参照完整性的定义与验证)、复杂完整性表达(触发器) 1)主键定义例子一个

直接用界面对列右键为主键操作

2)外键定义例子一个

alter table sc add constraint fk_sno foreign key (cno) references cou(cno) 添加foreign key 3)CHECK约束

a)定义学生的年龄在16-30之间。

DATEDIFF() 函数返回两个日期之间的天数b)定义成绩在0-150之间

例:SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate

b)定义成绩在0-150之间

alter table Sc

add constraint ck_grade check( grade between 0 and 150 )

c)定义学号由S开头,其余字符为数字字符,长度为4的

4)分别创建一个用户自定义类型,用于定义STU及COU表的学号与课号(CREATE TYPE。。FROM、CREATE RULE。。AS,SP_BINDRULE,SP_UNBINDRULE等) 学号由S开头,其余字符为数字字符,长度为4的.课号以C开始,其余字符为数字字符,长度为4的

sqlP183

5)使用Unique修改MAJOR表,定义专业名具有唯一性。

5)Default:性别默认为TRUE(代表男性)

6)not null:分别修改major、STU表、COU表,专业名、姓名、课名不可为空

5、存储过程创建与使用

1).创建存储过程P1,查询学生表所有信息;运行之。

create procedure P1 as select *from STU

2)创建存储过程P2,查询某学号学生的所有信息,运行之

create procedure P2 @sno char(4) as select *from STU where SNO=@sno

3)创建存储过程P3,查询某学号学生的姓名及所就读专业,运行之

create procedure P3 @sno char(4) as

select sname,mname from STU,major where STU.MNO=major.MNO and SNO=@sno

4).创建存储过程P4,查询‘C002’课程平均分最高的学生学号与姓名,运行之

CREATE PROCEDURE P4 AS

SELECT STU.SNO,SNAME FROM STU,SC WHERE STU.SNO=SC.SNO AND GRADE=(SELECT MAX(GRADE)FROM SC WHERE CNO='C002')


实验3吴树森SQL(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017宁夏教师招聘备考:教育学重点章节备考指导

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: