gklsql.docx
《gklsql.docx》由会员分享,可在线阅读,更多相关《gklsql.docx(20页珍藏版)》请在冰点文库上搜索。
gklsql
SQLServer数据库实验报告
专业班级姓名
1.实验题目:
实验一第2题注册服务器
1.1实验目的
1.了解SQLServer2008各版本的信息。
2.熟悉SQLServer2008的安装与配置。
3.熟悉SQLServer2008ServerManagementStudio的使用
4.了解SQLServer2008常用组件
5.熟练使用SQLServer教程与SQLServer联机丛书
1.2实验要求
(1)练习注册本机SQLServer2008服务器,注册SQLServer服务器的步骤:
❑第1步:
打开SQLServerManagementStudio窗口→“视图”→“已注册的服务器”;
❑第2步:
展开服务器引擎→右击“本地服务器组”→“新建服务器注册”→在打开的对话框中设置服务器名称和身份验证模式;(注意观察“常规”选项卡和“连接属性”选项卡的设置);
❑第3步:
单击“测试”按钮,测试到新建服务器的连接。
如果配置成功,则会提示连接测试成功;
❑第4步:
测试成功后,单击“保存”按钮,保存新建的服务器注册。
(2)修改服务器注册信息(使用“编辑服务器注册信息”对话框)。
(3)删除
(1)中注册的服务器,并重新注册。
1.3T-SQL程序
1.4运行结果
2.实验题目:
实验一第3题配置服务器
2.1实验目的
1.了解SQLServer2008各版本的信息。
2.熟悉SQLServer2008的安装与配置。
3.熟悉SQLServer2008ServerManagementStudio的使用
4.了解SQLServer2008常用组件
5.熟练使用SQLServer教程与SQLServer联机丛书
2.2实验要求
使用“服务器属性”对话框可进行服务器配置,打开该对话框,观察各选项卡的配置有哪些。
2.3T-SQL程序
2.4运行结果
3.实验题目:
实验一第4题.管理服务器组
3.1实验目的
1.了解SQLServer2008各版本的信息。
2.熟悉SQLServer2008的安装与配置。
3.熟悉SQLServer2008ServerManagementStudio的使用
4.了解SQLServer2008常用组件
5.熟练使用SQLServer教程与SQLServer联机丛书
3.2实验要求
(1)创建两个服务器组,名称分别为S1、S2。
(2)将注册的服务器添加到名为S1的服务器组中。
3.3T-SQL程序
3.4运行结果
4.实验题目:
实验一第5题服务器的暂停、停止、启动和重新启动
4.1实验目的
1.了解SQLServer2008各版本的信息。
2.熟悉SQLServer2008的安装与配置。
3.熟悉SQLServer2008ServerManagementStudio的使用
4.了解SQLServer2008常用组件
5.熟练使用SQLServer教程与SQLServer联机丛书
4.2实验要求
分别使用两种方法练习服务器的暂停、停止、启动和重新启动。
4.3T-SQL程序
第一种是右键单击,会出现对应的选项,选择后确定即可;
第二种:
通过命令提示符控制,开始,运行netstopMSSQLSERVER停止服务,netstartMSSQLSERVER启动服务
4.4运行结果
暂停、停止、启动和重新启动
5.实验题目:
实验二第3题使用图形界面SSMS创建数据库
5.1实验目的
1.掌握使用SSMS图形化界面创建、修改、打开、收缩与删除数据库。
2.掌握使用T-SQL语句创建、修改、打开与删除数据库。
3.熟练查看数据库中的各种对象
4.掌握分离与附加数据库
5.2实验要求
创建数据库stuinfo,要求如下。
①包含三个数据文件(MF.mdf、F1.ndf、F2.ndf)和两个日志文件(L1.ldf、L2.ldf),②F1.ndf和F2.ndf放到自定义的文件组G1中,③数据文件存储到D:
\SQLDATA,日志文件存储到E:
\SQLLOG。
文件的其他属性自定义。
5.3T-SQL程序
5.4运行结果
5.实验题目:
实验二第4题使用Transact-SQL语句创建数据库
5.1实验目的
1.掌握使用SSMS图形化界面创建、修改、打开、收缩与删除数据库。
2.掌握使用T-SQL语句创建、修改、打开与删除数据库。
3.熟练查看数据库中的各种对象
4.掌握分离与附加数据库
5.2实验要求
删除第3题中的数据库,再使用命令CREATDATABASE创建第3题中的数据库。
5.3T-SQL程序
DROPDATABASEstuinfo;
CREATEDATABASEstuinfo
ONPRIMARY
(NAME=MF,FILENAME='D:
\SQLDATA\MF.MDF'),
FILEGROUPG1
(NAME=F1,FILENAME='D:
\SQLDATA\F1.NDF'),
(NAME=F2,FILENAME='D:
\SQLDATA\F2.NDF')
LOGON
(NAME=L1,FILENAME='D:
\SQLLOG\L1.LDF'),
(NAME=L2,FILENAME='D:
\SQLLOG\MF.LDF')
5.4运行结果
5.实验题目:
实验二第5题修改数据库
5.1实验目的
1.掌握使用SSMS图形化界面创建、修改、打开、收缩与删除数据库。
2.掌握使用T-SQL语句创建、修改、打开与删除数据库。
3.熟练查看数据库中的各种对象
4.掌握分离与附加数据库
5.2实验要求
1)使用SSMS图形界面修改前面创建的数据库stuinfo,向其中添加一个文件组G2,再向该文件组中添加一个数据文件F3.ndf。
2)删除1)中的文件F3.ndf和文件组G2。
3)使用T-SQL命令完成1)中的操作。
5.3T-SQL程序
ALTERDATABASEstuinfo
ADDFILEGROUPG2
GO
ALTERDATABASEstuinfo
ADDFILE(
NAME=F3,FILENAME='D:
\SQLDATA\F3.NDF'
)TOFILEGROUPG2
5.4运行结果
6.实验题目:
实验三第4题使用T-SQL语句创建表
6.1实验目的
1.掌握使用SSMS图形化界面创建表、修改表结构以及删除表。
2.掌握使用T-SQL语句创建表、修改表以及删除表。
3.掌握表约束的定义(主键、外键、默认值、非空、唯一、check等约束)。
4.掌握表间关联的创建、表依赖关系的查看。
5.掌握使用SSMS图形化界面输入表中记录。
6.掌握表数据的导入导出
6.2实验要求
1)创建第1题中的student表,要求:
①sno列为主键;
②除monitor可为空值外,其他列不能为空;
③ssex列的默认值设为“男”;。
④monitor为外键,参照自身表的sno列。
向该表中添加两条记录
2)创建第1题中的score表,要求:
①sno列和cno列的组合为主键;
②degree列的取值在0到100之间;
③sno列为外键,参照student表的sno列;
④cno列为外键,参照course表的cno列。
6.3T-SQL程序
1)createtablestudent
(snochar(5)primarykey,
snamechar(10)notnull,
ssexchar
(2)default'男',
sbirthdaynchar(20)notnull,
sclasschar(10)notnull,
monitorchar(5)constraintfk_studentreferencesstudent(sno)
)
2)createtablescore
(Snochar(5),
Cnochar(10),
PRIMARYKEY(Sno,Cno),
FOREIGNKEY(Sno)REFERENCESStudent(Sno),
FOREIGNKEY(Cno)REFERENCESCourse(Cno),
degreechar(10)check(degreebetween0and100)
)
6.4运行结果
7.实验题目:
实验三第5题使用T-SQL语句修改表
7.1实验目的
1.掌握使用SSMS图形化界面创建表、修改表结构以及删除表。
2.掌握使用T-SQL语句创建表、修改表以及删除表。
3.掌握表约束的定义(主键、外键、默认值、非空、唯一、check等约束)。
4.掌握表间关联的创建、表依赖关系的查看。
5.掌握使用SSMS图形化界面输入表中记录。
6.掌握表数据的导入导出
7.2实验要求
修改teacher表,向该表中添加一列communist(是否党员),类型为逻辑型(bit)。
7.3T-SQL程序
altertableteacher
addcommunistbitnull
7.4运行结果
8.实验题目:
实验三第6题使用T-SQL语句修改表定义
8.1实验目的
1.掌握使用SSMS图形化界面创建表、修改表结构以及删除表。
2.掌握使用T-SQL语句创建表、修改表以及删除表。
3.掌握表约束的定义(主键、外键、默认值、非空、唯一、check等约束)。
4.掌握表间关联的创建、表依赖关系的查看。
5.掌握使用SSMS图形化界面输入表中记录。
6.掌握表数据的导入导出
8.2实验要求
1)修改course表,添加一列cpno(先行课),类型为char(6),设该列为外键,参照自身表的cno列,添加cname列的值唯一约束。
2)删除student表的monitor列。
8.3T-SQL程序
1)altertablecourse
addforeignkey(cpno)referencescourse(cno)
altertablecourse
addcnamecharunique
2)altertablestudentdropcolumnmonitor
8.4运行结果
9.实验题目:
实验七第1题使用命令对数据库stuinfo完成操作
9.1实验目的
掌握视图的创建、查询、删除及通过视图修改基本表中的数据
掌握索引的创建、删除
9.2实验要求
1)创建某个班的学生视图V1,包括Sno,Sname,Sbirthday,sclass。
2)创建某门课的选课视图V2并与架构dbo绑定,视图包括Cno、Cname、Sno、Sname、Degree。
3)创建每个学生平均成绩的视图V3,包括Sclass、Sno、Sname、Davg(平均成绩)
4)查询视图V3,检索平均成绩大于等于80分的学生信息。
5)修改视图V2中的Degree列,将某门课的成绩减去5分。
(修改前后注意查看基本表中的相关数据)
6)调用存储过程sp_helptext查看视图V3的定义。
7)删除视图V1。
9.3T-SQL程序
1)createviewv1
as
selectsno,sname,sbirthday,sclass
fromstudent
2)createviewv2
as
withdbo
selectCno,Cname,Sno,Sname,Degree
fromcourse
3)createviewv3(Sclass,Sno,Sname,Davg)
as
selectStudent.Sclass,Sno,Sname,AVG((cast(Course.Gradeasint)))
fromStudentjoinCourse
onStudentCourse.Sno=Student.Sno
groupbyStudent.Sno,Student.Sname
4)selectdistinct*
fromv3
havingDavg>=80
6)sp_helptextv3
7)dropviewv1
9.4运行结果
10.实验题目:
实验七第2题使用命令创建索引
10.1实验目的
掌握视图的创建、查询、删除及通过视图修改基本表中的数据
掌握索引的创建、删除
10.2实验要求
1)为score表创建sno和cno列的唯一聚集索引,要求插入或修改时忽略重复键值。
2)为Course表的Cname列创建一个唯一非聚集索引,要求填充50%的叶级页。
3)为视图V2创建一个按Sno升序的唯一聚集索引,再创建一个先按cno升序,再按Degree降序的非聚集索引。
4)调用存储过程sp_helpindex查看score表的索引信息。
10.3T-SQL程序
10.4运行结果
11.实验题目:
实验七第4题默认对象与规则
11.1实验目的
掌握视图的创建、查询、删除及通过视图修改基本表中的数据
掌握索引的创建、删除
11.2实验要求
1)创建默认对象con1,取值为“男”,并将其绑定到student表的性别列和teacher表的性别列,然后解除绑定。
2)创建规则r1,限定取值范围为0到100,并将其绑定到score表的degree列,然后解除绑定。
11.3T-SQL程序
11.4运行结果
12.实验题目:
实验七第5题创建存储过程
12.1实验目的
掌握视图的创建、查询、删除及通过视图修改基本表中的数据
掌握索引的创建、删除
12.2实验要求
1)①创建一个存储过程p1,查询指定学号的学生的姓名和平均分,要求姓名和平均分使用返回参数。
②执行该存储过程查询学号为101的学生的姓名和平均分。
2)①创建存储过程P2,根据指定的学号和课程号判断成绩等级(A、B、C、D、E)(如果degree>=90则为A,依次类推,不及格为E)。
②执行该存储过程查看学号为101、课程号为3-105的成绩等级。
3)①创建存储过程,检查指定学号的学生是否有选课。
有就输出其姓名、课程名和成绩,没有就输出“该生无选课”。
②执行该存储过程分别查看学号为和学生的选课情况。
12.3T-SQL程序
12.4运行结果
13.实验题目:
实验八第1题存储过程的创建及调用
13.1实验目的
掌握存储过程的创建及调用
掌握触发器的创建及测试
13.2实验要求
1)①创建一个存储过程p1,查询指定学号的学生的姓名和平均分,要求姓名和平均分使用返回参数。
②执行该存储过程查询学号为101的学生的姓名和平均分。
2)①创建存储过程P2,根据指定的学号和课程号判断成绩等级(A、B、C、D、E)(如果degree>=90则为A,依次类推,不及格为E)。
②执行该存储过程查看学号为101、课程号为3-105的成绩等级。
3)①创建存储过程,检查指定学号的学生是否有选课。
有就输出其姓名、课程名和成绩,没有就输出“该生无选课”。
②执行该存储过程分别查看学号为和学生的选课情况。
13.3T-SQL程序
13.4运行结果
14.实验题目:
实验八第2题触发器的创建及测试
14.1实验目的
掌握存储过程的创建及调用
掌握触发器的创建及测试
14.2实验要求
1)①建立一个触发器t1,将student表中所有修改时改前的记录及修改日期保存到ss表中作为历史记录。
②测试:
使用命令查询student表中的信息,再使用命令将student表中的95031班改为96032班,然后使用命令查询ss中的记录检查触发器t2是否正确。
2)①创建触发器t2,当删除student表中的某个学生记录时,应该也同时删除score表中该生的选课记录。
②测试:
在student表中添加一条学号为222的学生记录,在score表中添加该学号三条选课记录,然后删除学生表中的该学号的学生记录,检查score表中学号为222的记录是否还存在,从而测试该触发器是否正确。
3)①创建触发器t3,当修改student表中的某个学生学号时,同时也修改score表中该生的学号。
②测试:
使用命令分别查询student表和score表中学号为的学生信息,再使用命令将student表中学号为的改为,然后使用命令再分别查询student表和score表中学号为和的学生信息,从而检查触发器t1是否起作用。
14.3T-SQL程序
14.4运行结果