1 / 11
文档名称:

数据库实验5实验报告.doc

格式:doc   大小:113KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库实验5实验报告.doc

上传人:wdggjhm62 2020/11/30 文件大小:113 KB

下载得到文件列表

数据库实验5实验报告.doc

文档介绍

文档介绍:淮海工学院计算机工程学院
实验报告书
课程名: 《数据库原理及应用》
题 目: 数据库的完整性

班 级: 软件132
学 号: 2013122907
姓 名: 莹莹
评语:
成绩: 指导教师:
批阅时间: 年 月 日
目的与要求
掌握索引创建和删除的方法;
掌握创建视图和使用视图的方法;
掌握完整性约束的定义方法,包括primary key、foreign key等。
实验容
基于前面建立的factory数据库,使用T-SQL语句在worker表的“部门号”列上创建一个非聚集索引,若该索引已经存在,则删除后重建。
在salary表的“职工号”和“日期”列创建聚集索引,并且强制唯一性。
建立视图view1,查询所有职工的职工号、、部门名和2004年2月工资,并按部门名顺序排列。
建立视图view2,查询所有职工的职工号、和平均工资;
建立视图view3,查询各部门名和该部门的所有职工平均工资;
显示视图view3的定义;
实施worker表的“性别”列默认值为“男”的约束;
实施salary表的“工资”列值限定在0~9999的约束;
实施depart表的“部门号”列值唯一的非聚集索引的约束;
为worker表建立外键“部门号”,参考表depart的“部门号”列。
建立一个规则sex:性别=’男’ OR 性别=’女’,将其绑定到“性别”上;
删除上面第7、8、9和10建立的约束;
解除第11题所建立的绑定并删除规则sex。
实验步骤
1
USE factory
GO
--判断是否存在depno索引;若存在,则删除之
IF EXISTS(SELECT name FROM sysindexes WHERE name='depno')
DROP INDEX
GO
--创建depno索引
CREATE INDEX depno ON worker(部门号)
GO
EXEC sp_helpindex worker
GO
2
USE factory
GO
--判断是否存在no_date索引;若存在,则删除之
IF EXISTS(SELECT name FROM sysindexes WHERE name='no_date')
DROP INDEX
GO
--创建no_date索引
CREATE UNIQUE CLUSTERED INDEX no_date ON salary(职工号,日期)
GO
EXEC sp_helpindex salary
GO
3
USE factory
GO
--如果视图viewl存在,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name = 'view1' AND type='V')
DROP VIEW view1
GO
--创建视图viewl
CREATE VIEW view1
AS SELECT TOP 15 ,worker.,,
AS '2004年月工资'
FROM worker,depart,salary
WHERE = AND =
AND YEAR()=2004 AND MONTH()=2
ORDER BY
GO
SELECT * FROM view1
GO
4
USE factory
GO
--如果视图view2存在,则删除
IF EXISTS(SELECT * FROM sysobjects WHERE name = 'view2' AND type='V')
DROP VIEW view2
GO
--创建视图view2
CREATE VIEW view2
AS SE