金陵科技学院 实验报告
六、实验体会和收获
5
3实验项目名称: 关系、索引和视图 实验学时: 2 同组学生姓名: 实验地点: B513 实验日期: 实验成绩: 批改教师: 批改时间:
一、实验目的和要求
1、理解关系图的含义及用途,掌握关系图的创建方法;
2、理解视图的基本概念、种类及利用视图修改数据时的限制,掌握视图的创建方法; 3、理解索引的基本概念及其优缺点,掌握创建索引的方法。
二、实验设备、环境
设备:奔腾Ⅳ或奔腾Ⅳ以上计算机;
环境:WINDOWS 2000 SERVER或WINDOWS 2003 SERVER、SQL Server2005中文版。
三、实验步骤
1、根据题目要求熟悉SQL Server2005的各种管理工具; 2、分析题意,重点分析题目要求并给出解决方法;
3、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中; 4、提交完成的实验结果。
四、实验内容
1、创建关系图
根据实际情况,为MyDB数据库创建关系图。其中包括:Student、Course、Grade、Class四张表格,选择表中相应的属性建立表间的关联。 2、视图的创建、查询、修改和删除。(P107)
(1)创建一个名为V_Student以显示学生的学号、姓名、性别和出生年月等基本信息。
(2)创建一个名为创建一个视图V_grade,以显示“0001”号课程的学生成绩信息,如学号、姓名、课程名称、成绩和学分等。
(3)分别利用视图V_Student和V_grade作查询和更新操作。 (4)修改V_Student视图的定义,为其增加一个条件,使得该视图只显示“CS01”班学生的基本信息。 (5)删除名为V_Student的视图。 3、索引的创建、查看和删除。(P97)
(1)为Student表创建一个基于总学分和学号的索引idex_total_xh,其中总学分按降序排列,当总学分相同时,按学号升序排列,填充因子为80%。
(2)学生表创建一个基于班级和姓名的索引idex_clas_name,其中按班号按升序、学生姓名按降序排列,填充因子为70%。 (3)利用索引管理器查看索引。
金陵科技学院 实验报告
(4)删除索引idex_total_xh。再利用索引管理器查看索引。
注:以上3题除了第一题,其余各题均需要使用工具和SQL语言两种方法来完成。并将SQL语句按题号保存在自己的文件夹下的实验三目录中。
五、问题解答及实验结果
六、实验体会和收获
1
4实验项目名称: 约束、默认和规则 实验学时: 2 同组学生姓名:
实验地点: B513
实验日期: 实验成绩: 批改教师: 批改时间:
一、实验目的和要求
1、理解数据库中的实体完整性约束,掌握PRIMARY KEY、UNIQUE、NOT NULL 等约束的创建方法;
2、理解参照完整性约束的概念,掌握FORENGN KEY 创建方法; 3、理解域完整性的概念,掌握CHECK及规则的创建方法; 4、理解默认值的概念,掌握默认值和默认对象的创建方法。
二、实验设备、环境
设备:奔腾Ⅳ或奔腾Ⅳ以上计算机;
环境:WINDOWS 2000 SERVER或WINDOWS 2003 SERVER、SQL Server 2005中文版。
三、实验步骤
1、根据题目要求熟悉SQL Server 2005的各种管理工具; 2、分析题意,重点分析题目要求并给出解决方法;
3、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中; 4、提交完成的实验结果。
四、实验内容(使用实验2创建的数据库MyDB)
1、约束在数据库中的应用(P57)
(1)用系统存储过程sp_helpconstraint查看Student表的约束。 (2)在新建查询中输入插入一个学生信息的命令:
insert into Student(SNO,Sname,Sex,ClsNO,StuAddr,Brithday,Height,TotalCredit) values('19920101','王军','男','CS01','下关#','1976.12.21',1.76,10) 观察其结果。
修改SNO的值,将其值修改为?19000001?,其他的值保持不变,再插入一次,观察其结果。 (3)修改Student表,使用Check约束,使性别列只能接受“男”或“女”,以强制执行域数据完整性。重做(1),观察其结果。
(4)禁止Student表中的Sex列上的约束:alter table Student nocheck constraint CK_Student (5)删除约束:alter table Student drop constraint CK_Student。重做(1)。 (6)利用关系图,建立Student表与Course表与Grade表的主外键约束。
金陵科技学院 实验报告
2、默认的应用(P63)
(1)创建默认对象:default_birthday,默认值为?1982-1-1?。
(2)利用系统存储过程sp_bindefault将default_birthday绑定到Student表的Birthday列上。 (3)利用系统存储过程sp_unbindefault解除Student表的Birthday列上的默认值绑定。 (4)删除默认值:DROP DEFAULT default_birthday
(5) 定义一个默认值为4的Default_Value,并将它绑定到Course表的Credit列上,绑定后给Course插入数据行,观察默认值的设置情况,使用完毕后,解除并删除绑定。实现过程要求使用SQL语句完成。 3、规则的应用
(Microsoft SQL Server 的未来版本中将删除 CREATE RULE。请避免在新的开发工作中使用 CREATE RULE,并计划修改当前使用它的应用程序。建议您改用检查约束。检查约束是使用 CREATE TABLE 或 ALTER TABLE 的 CHECK 关键字创建的。)
(1)利用企业管理器创建规则:规则名为:rule_credit_range,文本为:@range>=1 and @range<=8; (2)绑定规则:将rule_credit_range 绑定到Course表的Credit列上; (3)解除(2)中设置的规则绑定,删除规则rule_ credit _range;
(4)定义一个规则rule_Specialty,这个规则限制Class表中的Specialty列只能取以下的值:计算机应用、信息管理、数学、物理。将该规则绑定到Class表后,向Class表插入数据行,观察规则的设置情况,使用完毕后,解除并删除该规则。
五、问题解答及实验结果
1