数据库设计与管理实验指导书.doc
数据库设计与管理实验指导书张益星 编写湖南工程学院计算机与通信学院二00九年三月实验一:配置SQL Server 2000一、 实验目的:1、掌握启动和停止SQL Server服务的方法。2、掌握注册SQL Server服务器的方法。3、掌握创建服务器组的方法。4、了解企业管理器和查询分析器的功能。二、 实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、 实验内容:1、练习用不同的方法启动SQL Server服务。2、新建服务器组。3、删除服务器组。4、注册服务器。5、断开与恢复同服务器的连接。6、删除SQL Server注册。7、打开查询分析器。数据库设计与管理实验报告实验名称 配置SQL Server 2000 评分 实验日期 2012 年 10 月 15 日 指导教师 张益星 姓名 谭黎黎 专业班级 信管1102 学号 14 一、实验目的1、掌握启动和停止SQL Server服务的方法。2、掌握注册SQL Server服务器的方法。3、掌握创建服务器组的方法。4、了解企业管理器和查询分析器的功能。二、实验步骤及结果1、练习用不同的方法启动SQL Server服务。2、新建服务器组。3、删除服务器组。4、注册服务器。5、断开与恢复同服务器的连接。6、删除SQL Server注册。7、打开查询分析器。三、程序调试及问题分析打开查询分析器时,要通过Internet验证。四、实验收获及体会实验二:创建数据表,修改表结构一、 实验目的:掌握建立一个数据库表结构的方法和步骤 ,了解数据库表的基本组成。 二、 实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、 实验内容:1、用create建立教学数据库的五个基本表:(1) 学生表(学号,姓名,性别,年龄),student(Sno, sname, ssex,sage) ;(2)课程表(课程号,课程名,学分),Course (Cno, Cname, credit) ;(3)选课表(学号,课程号,成绩),SC (Sno, Cno, grade ) ;(4) 教师表(教师号,姓名,性别,出生年月,系部,职称,地址),T(Tno,Tname,ssex,birthday,dept,title,address) ;(5) 工资表(教师号,基本工资,职务工资,合计),Salary(Tno,jbgz,zwgz,hj);2、用alter修改基本表(1)在已存在的学生表student中增加一个sdept(系)的新的属性列;(2)将学生表student中sname属性列的数据类型修改为变长字符串varchar(10)。3、建立一个临时表,然后将其删除数据库设计与管理实验报告实验名称 创建数据表,修改表结构 评分 实验日期 2012 年 10 月22日 指导教师 张益星 姓名 谭黎黎 专业班级 信管1102班 学号 14 一、实验目的掌握建立一个数据库表结构的方法和步骤 ,了解数据库表的基本组成。二、实验步骤及结果1打开SQL服务管理器,开始运行。2在SQL Server 中打开企业管理器,新建一个数据库shiyan2。3打开SQL查询分析器(一)在数据库shiyan2用create语言建表(1) create table Student (Sno char(9), Sname char(20), Ssex char(2), Sage SMALLINT);(2)(3)(4)(5)(二)用alter修改基本表(1)ALTER TABLE Student ADD Sdept char(20); (2) ALTER TABLE Student ALTER COLUMN Sname varchar(10); (三) Create TABLE AP ( a1 char(9), a2 char(9), a3 char(9);DROP TABLE AP ;三、程序调试及问题分析1.用查询分析器建好表后,企业管理器查找不到该表,需要对建好的数据库刷新。2.建表的语句中“)”前没有“,”,但其后有“;”。四、实验收获及体会用CREATE语句建表时要注意标点符号,用ALTER语句修改表时要注意关键字。实验三:索引的创建与使用一、实验目的:1、理解索引的概念和索引的作用。2、掌握创建索引的方法。3、学会使用索引。4、了解聚簇索引和非聚簇索引。二、实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、用create index在学生表student的学号sno上建立聚簇索引。2、在学生表student中,为姓名sname建立非聚簇索引。3、在课程表的课程号Cno上建立唯一索引。4、在选课表的学号sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为降序。5、 用drop删除学生表student的索引。数据库设计与管理实验报告实验名称 索引的创建与使用 评分 实验日期 2012 年 10 月 29 日 指导教师 张益星 姓名 谭黎黎 专业班级 信管1102 学号 14 一、实验目的1、理解索引的概念和索引的作用。2、掌握创建索引的方法。3、学会使用索引。4、了解聚簇索引和非聚簇索引。二、实验步骤及结果1、Create clustered index stu1 on student(sno);2、Create unique index s2 on student(sname);3. Create unique index c1 on course(cno);4、Create index s3 on SC(sno ASC, Grade DESC);5DROP index stusno;三、程序调试及问题分析1.” Create cluster index stu1 on student(sno);”语句出错,修改为“Create clustered index stu1 on student(sno);”正确,命令完成。2,. 在选课表的学号sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为降序。“create uinique index s3 on Sc(Sno ASC); Create index s3 on SC( Grade DESC);”改为“Create index s3 on SC(sno ASC, Grade DESC);”四、实验收获及体会在错误和一次次调试中掌握了索引的使用。实验四:数据的插入、更新及删除操作一、实验目的:1、熟练掌握用企业管理器编辑表中的数据。2、能够运用T-SQL语句对表中的数据进行插入、修改和删除操作。 二、实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、使用企业管理器编辑表student的数据。2、用SQL语句向表中插入数据。学生表student的数据 张三22男计算机系 李四 21男信息系王五23男数学系陈六19男计算机系吴七24女数学系刘八22女信息系课程表course的数据1 数学52 数据结构43 程序设计24 数据库原理35 操作系统3选课表SC的数据190580385490185298291基本表T的数据0001张三男1968-10信息副教授湘潭0002李四 女1956-11信息教授长沙1001王五男1973-07计算机讲师湘潭1008陈六男1970-08计算机副教授北京基本表Salary的数据000110003001300000215005002000100180020010003、用SQL语句删除表中的记录。(1)删除教师表T中教师号为0001的元组。(2)删除教师表T中的全部数据。4、用SQL语句修改表中的记录。(1) 把0001号教师的基本工资加100。(2) 把所有教师的基本工资都加100。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的1、熟练掌握用企业管理器编辑表中的数据。2、能够运用T-SQL语句对表中的数据进行插入、修改和删除操作。 二、实验步骤及结果1、使用企业管理器编辑表student的数据。2.(1) select *from Student;实验结果:命令已成功完成。(2)三、程序调试及问题分析四、实验收获及体会实验五:使用SELECT语句进行数据查询一、实验目的:1、掌握SELECT子句以及WHERE子句的使用方法。2、学会应用ORDER BY 子句。3、学会应用GROUP BY 子句。4、熟悉基本的连接操作,掌握内连接与外连接的方法,学会应用自身连接。5、掌握相关子查询的使用方法。6、掌握嵌套子查询的使用方法。7、学会应用子查询查询修改数据。二、实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:4学时三、实验内容:1、简单查询,用select检索(1)查询所有学生的基本情况。(2)查询教师每月应交纳的个人所得税。(3)查询张三与李四两位同学的基本情况。(4)查询9911班学生的基本信息(规定学生学号的前四位是班级号)。(5)查询所有年龄在20岁以下的学生姓名及其年龄。(6)查询选修了2门以上课程的学生学号。2、多表查询,用select检索(1)查询教师的收入情况,包括教师号、姓名及月总收入。(2)查询每个学生的学号、姓名、选修课程及成绩。(3)查询每一门课的间接先修课。(4)查询有相同地址的两位教师的信息。(5)查询选修2号课程且成绩在90分以上的所有学生。(6)查询与王五在同一个系学习的学生。3、使用select语句查询(1)9911班学生的人数和平均成绩(2)每个学生的学号和相应的平均成绩(3)成绩大于90分的学生学号(4)月工资大于平均工资的教师号数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的1、掌握SELECT子句以及WHERE子句的使用方法。2、学会应用ORDER BY 子句。3、学会应用GROUP BY 子句。4、熟悉基本的连接操作,掌握内连接与外连接的方法,学会应用自身连接。5、掌握相关子查询的使用方法。6、掌握嵌套子查询的使用方法。7、学会应用子查询查询修改数据。二、实验步骤及结果12.(1) select *from Student;实验结果:命令已成功完成。.(4) select *from Studentwhere Sno LIKE '9911%'实验结果:命令已成功完成。(5) select Sname,Sagefrom Studentwhere Sage<20;实验结果:命令已成功完成。(6) select Snofrom SCgroup by Snohaving count(*)>2;实验结果:命令已成功完成。2.(1)select T.Tno,Tname,hjfrom Salary,Twhere Salary.Tno=T.Tno实验结果:命令已成功完成。(2) select Student.Sno,Sname,Cname,Grade from Student,SC,Course where Student.Sno=SC.Sno and Course.Cno=SC.Cno;实验结果:命令已成功完成。 /(3) select first.Cno,second.Cpnofrom Course first,Course secondwhere first.Cpno= second.Cno;实验结果:命令已成功完成。(4) select *from Twhere address='湘潭'实验结果:命令已成功完成。(5) select Student.Sno,Snamefrom Student,SCwhere Student.Sno=SC.Sno and SC.Cno='2' and SC.Grade>90;实验结果:命令已成功完成。(6) select Sno,Sname,Sdeptfrom studentwhere Sdept in(select Sdept from Student where Sname='王五');实验结果:命令已成功完成。3.(1) select count(*)from Studentwhere Sno like '9911%'unionselect avg(Grade)from SCwhere Sno like '9911%'实验结果:命令已成功完成。 (2) select Sno,avg(grade)from SCgroup by Sno;实验结果:命令已成功完成。(3) select Snofrom SCwhere Grade>90;实验结果:命令已成功完成。三、程序调试及问题分析1 select Tno,Tname,hjfrom Salary,Twhere exists(SELECT *FROM TWHERE Tno=Salary.Tno);2 select T1.* from T T1,T T2where T1. address=T2.address;四、实验收获及体会实验六:视图一、实验目的:1、掌握创建视图的方法。2、能够对视图进行修改。3、能够通过视图修改数据。二、实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、建立男学生的视图,属性包括学号、姓名、选修课程名和成绩。2、在男学生视图中查询平均成绩大于80分的学生学号与姓名。3、建立信息系选修了1号课程的学生的视图。4、建立信息系选修了1号课程且成绩在90分以上的学生的视图。5、建立计算机系选修了2号课程的学生的视图。6、建立一个学生出生年份的视图。7、建立一个计算机系学生的视图,并要求在进行修改、插入操作时,仍然要确保视图只有计算机系的学生。8、向学生视图中插入一条新记录(,钱进,男,20)9、将学生视图中学号为的学生姓名改为“刘平平”。10、删除计算机系视图中学号为的记录。11、删除学生出生年份的视图。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果(1)create view Boy_StudentASselect Student.Sno,Sname,Cname,Gradefrom Student,Course,SCwhere Student.Sno=SC.Sno and SC.Cno=Course.Cno三、程序调试及问题分析四、实验收获及体会实验七:约束、缺省、规则一、实验目的:1、掌握如何创建、修改和删除规则。2、理解规则与CHECK约束、DEFAULT约束的区别。3、掌握如何创建、修改和删除缺省。二、实验要求:(必做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统。学时:2学时三、实验内容:1、创建学生年龄必须在一定范围的规则。2、创建学生性别只能是“男”或“女”的规则。3、创建学生成绩的规则。4、删除学生年龄的规则。5、删除学生性别的规则。6、删除学生成绩的规则。7、创建学生年龄为18岁的缺省。8、删除学生年龄的缺省。9、增加学生表student中姓名唯一约束。10、增加学生表student中性别男、女唯一约束。11、增加学生表student中年龄1825岁约束。12、增加学生表student中学号sno的主码约束。13、增加选课表SC中学号sno的外码约束。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果三、程序调试及问题分析四、实验收获及体会实验八:存储过程一、实验目的:掌握如何使用T-SQL语句创建、执行和重编译存储过程。二、实验要求:(选做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、建立查询计算机系女学生的存储过程。2、执行刚建立存储过程。3、修改刚建立的存储过程。4、建立一个按性别查询学生信息的带参数的存储过程。5、删除刚建立的存储过程。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果三、程序调试及问题分析四、实验收获及体会实验九:触发器一、实验目的:1、掌握如何使用T-SQL语句创建触发器。2、掌握AFTER触发器的用法,并了解INSTEAD OF删除触发器的用法。二、实验要求:(选做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、对student表创建delete触发器,当删除某个学生记录时,同时在选课表SC中删除该学生的选课记录。2、对student表创建update 触发器,当对student表进行修改时,显示被修改的记录。3、对SC表创建insert 触发器,当对SC表插入一条记录时,检查SC表中的学号在student表中是否存在,如果不存在,则不允许插入新记录。4、用alter trigger修改以上编写的触发器。5、用drop trigger删除以上编写的触发器。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果三、程序调试及问题分析四、实验收获及体会实验十:用户权限一、实验目的:1、掌握如何授予、拒绝和剥夺权限。二、实验要求:(选做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、把查询表STUNT权限授给用户KK。2、把表SC的全部权限授给用户KK。3、把对表SC的查看权限授予所有用户。4、把对表SC的插入权限授予给用户KK,并允许将此权限再授予其它用户。5、把在数据库中的建表权授给用户KK。6、把查询表T和修改教师编号TNO的权限授给用户KK。7、收回所有用户对表SC的查看权限。8、收回用户KK在数据库中的建表权。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果三、程序调试及问题分析四、实验收获及体会实验十一:数据的复制与恢复一、实验目的:1、熟练掌握附加数据库的方法。2、熟练掌握数据导入和导出的方法。3、熟练进行数据库的备份和还原。4、了解差异备份和完全备份。二、实验要求:(选做)硬件:Intel Pentium 120或以上级别的CPU,大于16MB的内存。软件:Windows 95/98/2000操作系统,关系数据库管理系统SQL SERVER 2000。学时:2学时三、实验内容:1、将所建数据库先进行分离,然后再分离出来的数据库进行附加操作。2、对所建数据库进行备份。3、对进行了备份的数据库进行还原。4、删除所建数据库。5、将所建数据库的数据导入到Excel表格中。6、将Excel表格中的数据导入到另一数据库中。数据库设计与管理实验报告实验名称 评分 实验日期 年 月 日 指导教师 姓名 专业班级 学号 一、实验目的二、实验步骤及结果三、程序调试及问题分析四、实验收获及体会