《数据库系统原理》实验指导书.docx
- 文档编号:6725171
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:28
- 大小:30.32KB
《数据库系统原理》实验指导书.docx
《《数据库系统原理》实验指导书.docx》由会员分享,可在线阅读,更多相关《《数据库系统原理》实验指导书.docx(28页珍藏版)》请在冰豆网上搜索。
《数据库系统原理》实验指导书
浙江树人大学信息科技学院
《数据库系统原理》
实
验
指
导
书
适合专业:
计算机科学与技术本科专业
编写部门:
电子商务教研室
编写日期:
2013.09
实验一:
SQLServer2005服务器管理1
实验二:
创建和管理数据库4
实验三:
数据定义7
实验四:
数据更新10
实验五:
数据查询113
实验六:
数据查询
(2)14
实验七:
数据查询(3)17
实验八:
数据查询(4)19
实验九:
数据查询(5)21
实验十:
视图23
实验十一:
约束、默认、规则25
实验十二、十三:
存储过程28
实验十四:
数据库的备份与还原31
实验一:
SQLServer2005服务器管理
一、实验目的
通过实验使学生掌握SQLServer2005数据库服务器启动、暂停、停止的方法;掌握SQLServer2005数据库服务器的注册方法。
二、原理解析
1、SQLServer2005服务器注册
注册服务器就是在SQLServerManagementStudio中登记服务器,然后把它加入到一个指定的服务器组中,并在SQLServerManagementStudio中显示SQLServer服务器的运行状态和在SQLServerManagementStudio连接时自动启动SQLServer服务器。
2、SQLServer2005的各种实用工具
●SQLServerManagementStudio
SQLServer提供了多种实用工具来帮助用户管理和使用数据库,这些工具大大方便了用户的工作。
SQLServerManagementStudio是微软管理控制台中的一个内建控制台,用来管理所有的SQLServer数据库。
●SQLServerManagementStudio查询窗口
SQLServerManagementStudio查询窗口是一个图形界面的查询工具,用它可以提交Transact-SQL语言,然后发送到服务器,并返回执行结果,该工具支持基于任何服务器的任何数据库连接。
●性能监视器
SQLServer提供了监视服务器性能和活动的功能,其功能是在选择的计数器上设置阀值,当达到阀值时,产生警告。
利用性能监视器可以创建、观察和保存功能图表,用户可以选择对象和计数器并把它们添加到图表中,不同颜色的图表代表不同的计数器,如果要使图表较小并且可读,可以创建不同的图表来监视不同的统计类型。
●活动监视器
SQL活动监视器是图形工具,使系统管理员得以监视SQLServer2005实例中的事件,可以捕获有关每个事件的数据并将其保存到文件或SQLServer表中供以后分析。
●SQLServer2005联机丛书
提供如何使用SQLServer2005的各种帮助。
3、SQLServer2005的常用属性配置
●SQLServer2005的登录方式设置
●SQLServer2005的连接设置
4、SQLServer2005服务器的运行管理
SQLServer2005服务器的启动、暂停和停止。
三、实验内容
1、启动、暂停和停止SQLServer实例
2、熟悉SQLServer2005的各种实用工具
3、SQLServer2005服务器注册
四、实验步骤
1、启动、暂停和停止SQLServer实例
●利用SQLServerManagementStudio
在已注册的服务器或对象资源管理器中,右键单击要启动的服务器实例,然后单击“启动”。
如果服务器名称旁边的图标上出现一个绿色箭头,则说明服务器已成功启动。
用同样的方法可以暂停和停止SQLServer实例。
●利用SQLServer配置管理器
(1)在“开始”菜单中,依次指向“所有程序”、“MicrosoftSQLServer2005”和“配置工具”,然后单击“SQLServer配置管理器”。
(2)在SQLServer配置管理器中,展开“服务”,再单击SQLServer。
(3)在详细信息窗格中,右键单击SQLServer(MSSQLServer),再单击“启动”。
如果工具栏上和服务器名称旁的图标上出现绿色箭头,则指示服务器已成功启动。
用同样的方法可以暂停和停止SQLServer实例。
2、熟悉SQLServer2005的各种实用工具
●SQLServerManagementStudio
●SQLServerManagementStudio查询窗口
●练习使用SQLServer2005联机丛书
3、SQLServer2005服务器注册
●在对象资源管理器中,右键单击已经连接的服务器,然后单击“注册”。
●在“注册服务器”对话框的“服务器名称”文本框中,键入希望显示在“已注册的服务器”中的该服务器的名称。
此项并不要求一定是服务器名称。
●在“服务器说明”文本框中,可以根据需要键入一些其他信息,以帮助标识服务器。
●在“选择服务器组”框中,单击服务器组,再单击“保存”。
实验二:
创建和管理数据库
一、实验目的
通过实验使学生掌握SQLServer2005数据库的文件结构,数据库的创建和修改方法。
二、原理解析
1、SQLServer2005数据库文件和文件组
SQLServer2005用文件来存放数据库,即将数据库映射到操作系统文件上。
数据库文件有主数据文件、次数据文件、事务日志文件。
主数据文件的后缀.mdf,次数据文件的后缀.nfd,事务日志文件的后缀.ldf。
一个数据库有且仅有一个主文件,事务日志文件至少一个,次数据文件可有可无。
SQLServer2005中提供了两种类型的文件组:
主文件组和用户自定义文件组。
2、SQLServer2005数据库类型
SQLServer2005数据库分为系统数据库和用户数据库。
系统数据库包括master数据库、tempdb数据库、model数据库和msdb数据库。
3、SQLServer2005数据库的创建方法
SQLServer2005数据库可以使用SQLServerManagementStudio创建,也可以使用T-SQL语句来创建。
用SQLServerManagementStudio创建数据库比较简单,只要设置好数据库名和主文件、次文件以及日志文件的位置和逻辑名、物理名就可以了。
下面介绍用T-SQL的CREATEDATABASE语句创建数据库。
CREATEDATABASEdatabase_name
[ON
[
[,
[LOGON{
[COLLATE
[FORLOAD|FORATTACH]
:
=[PRIMARY]
(NAME='逻辑文件名',
FILENAME='存放数据库的物理路径和文件名'
[,SIZE=数据文件的初始大小]
[,MAXSIZE=指定文件的最大大小]
[,FILEGROWTH=指出文件每次的增量])
4、SQLServer2005数据库的修改
SQLServer2005数据库的修改主要包括括修改数据库选项、扩充分配给数据库的数据或事务日志空间、压缩分配给数据库的数据或事务日志空间、添加数据和事务日志文件、创建文件组等。
本次实验要求掌握使用企业管理器工具和T-SQL语句及系统存储过程对数据库进行管理。
SQLServer2005数据库的修改可以在SQLServerManagementStudio中完成,也可以使用T-SQL的ALTERDATABASE语句进行。
ALTERDATABASE语句的语法结构如下:
ALTERDATABASEdatabase_name
{ADDFILE
/*在文件组中增加数据文件*/
|ADDLOGFILE
|REMOVEFILElogical_file_name/*删除数据文件*/
|ADDFILEGROUPfilegroup_name/*增加文件组*/
|REMOVEFILEGROUPfilegroup_name/*删除文件组*/
|MODIFYFILE
|MODIFYNAME=new_dbname/*更新数据库名称*/
}
三、实验内容
1、用SQLServerManagementStudio创建数据库
2、用CREATEDATABASE语句创建数据库
3、用SQLServerManagementStudio修改数据库
4、用ALTERDATABASE语句修改数据库
四、实验步骤
1、利用SQLServerStudio创建学生数据库,数据文件的存放路径和个数可以自己设定。
2、用CREATEDATABASE语句来创建一个名为BOOK的数据库,它由3MB的主数据文件、5MB的次数据文件和5MB的日志文件组成。
并且主数据文件以1MB的增长速度其最大数据文件的大小为10MB,次数据文件以2MB的增长速度其最大次数据文件的大小为15MB,事务日志文件以1MB的增长速度其最大日志文件的大小为10MB。
3、在SQLServerStudio中将学生数据库的主文件大小改为4MB。
4、用ALTERDATABASE语句修改BOOK数据库,为其增加一个次要数据文件(Book_data2.ndf),该文件的大小是5MB,最大可增长到20MB,以20%的速度增长。
5、利用SQLServerStudio为学生数据库增加一个文件组MyFilegroup。
提示:
通过数据库属性→文件组进行修改。
6、用ALTERDATABASE语句为BOOK数据库增加一个文件组MyFilegroup。
7、用ALTERDATABASE语句为BOOK数据库增加两个次数据文件,并将他们放到MyFilegroup文件组。
实验三:
数据定义
一、实验目的
通过实验使学生掌握用不用的方法设计数据库表结构、修改数据库表结构以及删除表结构。
二、原理解析
1、用SQLServer2005的SQLServerManagementStudio设计数据库表结构
用SQLServer2005的SQLServerManagementStudio设计数据库表结构比较简单,只要在表设计器中对表中的各个字段进行设计,主要包括字段名、字段的数据类型等。
2、用T-SQL的CREATETABLE语句创建表结构
CREATETABLE语句的语法结构如下:
CREATETABLEtable_name
({column_namedatatypeNOTNULL|NULL})
3、用SQLServer2005的SQLServerManagementStudio设计数据库表结构
用SQLServer2005的SQLServerManagementStudio设计数据库表结构比较简单,与创建表结构类似,只要打开表设计器,在表设计器中修改并加以保存就可以了。
4、用T-SQL的CREATETABLE语句创建表结构
CREATETABLE语句的语法结构如下:
●向表中添加列
ALTERTABLE表名
ADD列名列的描述
●删除列
ALTERTABLE表名
DROPCOLUMN列名
●修改列
ALTERTABLE表名
ALTERCOLUMN列名列的描述
5、删除表结构
●使用SQLServerManagementStudio删除表
●用T-SQL的DROPTABLE语句删除表
DROPTABLE表名
三、实验内容
1、用SQLServerManagementStudio创建数据库表
2、用CREATETABLE语句创建数据库表
3、用SQLServerManagementStudio修改数据库表结构
4、用ALTERTABLE语句修改数据库表结构
5、用SQLServerManagementStudio删除表
6、用DROPTABLE语句删除表
四、实验步骤
学生数据库由三张包括三张表xsqk、xskc、xscj,各个表的结构如下:
xsqk结构
列名
数据类型
长度
允许空值
说明
系别
Char
10
√
班级
Char
12
√
专业
Varchar
30
√
学号
Char
8
×
主键
姓名
Char
8
×
性别
Char
2
√
默认值:
男
出生年月
Smalldatetime
4
√
总学分
Tinyint
√
备注
Text
16
√
xskc结构
列名
数据类型
长度
允许空值
说明
课程号
Char
3
×
主键
课程名
Char
16
×
开课学期
Tinyint
×
规则:
1~8
学时
Tinyint
×
学分
Tinyint
√
xscj结构
列名
数据类型
长度
允许空值
说明
学号
Char
8
×
主键
课程号
Char
3
×
主键
成绩
Tinyint
√
学分
Tinyint
√
1、利用SQLServerStudio创建xsqk表。
2、用CREATETABLE语句创建xskc表和xscj表。
3、利用SQLServerStudio修改xskc表,向表中添加一个字段:
字段名为授课教师、数据类型为char、长度为10、并且允许为NULL。
4、用ALTERTABLE语句修改xskc,将刚刚添加的授课教师字段删除。
5、用ALTERTABLE语句修改xskc,将课程名长度改为18。
6、用SQLServerStudio删除数据表xscj。
7、用DROPTABLE语句删除数据表xskc。
实验四:
数据更新
一、实验目的
通过实验使学生掌握用不用的方法实现数据库表数据的插入、更新和删除。
二、原理解析
5、用SQLServer2005的SQLServerManagementStudio实现表数据的更新
用SQLServer2005的SQLServerManagementStudio实现表数据的更新比较简单,只要打开表,直接在里边作修改,然后退出,系统会自动保存。
6、用T-SQL的INSERT语句向表中插入数据
INSERT语句的语法结构如下:
INSERT[INTO]表名[(列名)]
VALUES(表达式)
7、用INSERT…SELECT语句向表中批量插入数据
INSERT…SELECT语句的语法结构如下:
INSERT[INTO]表名
SELECT语句
8、用T-SQL的UPDATE语句修改表数据
UPDATE语句的语法结构如下:
UPDATE表名
SET列名=表达式
[WHERE条件]
9、删除表数据
●用T-SQL的DELETE语句删除表数据
DELETE语句的语法结构:
DELETE表名
[WHERE条件]
●用T-SQL的TRUNCATETABLE语句删除表
TRUNCATETABLE语句的语法结构:
TRUNCATETABLE表名
三、实验内容
4、用SQLServerManagementStudio更新表数据
5、用INSERT语句向表中插入数据
3、用INSERT…SELECT语句向表中插入数据
4、用UPDATE语句修改表数据
5、用DELETE语句删除表数据
6、用TRUNCATETABLE语句删除表数据
四、实验步骤
1、利用SQLServerStudio向xsqk表、xskc表、xscj表中插入数据。
表1学生情况表(xsqk)数据样本
系别
班级
专业
学号
姓名
性别
出生年月
总学分
备注
计算机
计算机0203
计算机应用与维护
02020101
王玲玲
女
1981-8-26
9
计算机
计算机0203
计算机应用与维护
02020102
张燕红
女
1981-10-20
9
计算机
计算机0203
计算机应用与维护
02020103
杨勇
男
1982-3-15
计算机
计算机0203
计算机应用与维护
02020104
王红庆
男
1983-5-17
计算机
计算机0203
计算机应用与维护
02020105
陈园
女
1982-4-12
计算机
信息管理0201
信息管理
02020201
黄薇娜
女
1983-8-19
8
计算机
信息管理0201
信息管理
02020202
沈昊
男
1982-3-18
8
计算机
信息管理0201
信息管理
02020203
傅亮达
男
1983-1-22
计算机
信息管理0201
信息管理
02020204
任建刚
男
1981-12-21
计算机
信息管理0201
信息管理
02020205
叶小红
女
1983-7-16
表1学生课程表(xskc)数据样本
课程号
课程名
开课学期
学时
学分
101
计算机文化基础
1
86
4
102
Qbasic
1
68
4
205
离散数学
3
64
4
206
VC
2
68
4
208
数据结构
2
68
4
210
操作系统
3
64
4
212
计算机组成
4
86
5
216
数据库原理
2
68
4
301
计算机网络
5
56
3
表2学生成绩表(xscj)数据样本
学号
课程号
成绩
学分
02020101
101
85
4
02020101
102
70
5
02020102
101
90
4
02020102
102
80
5
02020201
101
86
4
02020201
208
80
4
02020202
208
50
4
02020202
216
60
4
2、用向xskc表中插入如下表所示的两条记录。
假设学生成绩表(xskc)中有如下数据:
表4要插入的记录值
课程号
课程名
开课学期
学时
学分
102
Qbasic
1
68
4
205
离散数学
3
64
4
3、利用SQLServerStudioManagement修改xsqk表、xskc表、xscj表中的数据。
4、用UPDATE语句修改xskc,将102课程的学分改为6。
5、用UPDATE语句修改xsqk,将信息管理专业学生的总学分改为12。
6、用DELETE语句删除“离散数学”的课程信息。
7、用DELETE语句删除1983年出生的学生信息。
8、用DELETE语句删除不及格的选课信息。
9、用TRUNCATETABLE语句删除xsqk表中的所有信息。
实验五:
数据查询1
一、实验目的
通过对SELECT的使用,掌握SELECT语句的结构及其应用,掌握基于单个表的查询。
二、原理解析
语法格式为:
SELECT〈目标列组〉
FROM〈数据源〉
[WHERE〈元组选择条件〉]
[GROUPBY〈分列组〉[HAVING〈组选择条件〉]]
[ORDERBY〈排序列1〉〈排序要求1〉[,…n]]
(1)SELECT子句
SELECT子句用于指明查询结果集的目标列。
(2)FROM子句
FROM子句用于指明查询的数据源。
(3)WHERE子句
WHERE子句通过条件表达式描述关系中元组的选择条件。
(4)GROUPBY子句
GROUPBY子句的作用是按分组列的值对结果集分组。
(5)ORDERBY子句
ORDERBY子句的作用是对结果集进行排序。
三、实验内容
(1)取出生年月小于’1982-1-1’的学生名单。
(2)检索xsqk表中的所有记录数据。
(3)查询班级为“计算机0203”的学生学号、姓名、性别。
(4)查询出生年月在“1981-01-01”至“1982-05-01”之间的学生情况。
(5)查询姓名中含有“红”字的学生情况。
(6)查询出生年月在“1981-01-01”至“1982-05-01”之间的学生情况,并以出生年月按降序排列。
(7)统计学生情况(xsqk)表中“计算机0203”的班级有多少人。
(8)统计学生成绩(xscj)表中每门课程的最低分、最高分和平均分。
(9)在学生成绩库中查询出生年月在“1981-01-01”至“1982-05-01”之间的男生姓名,班级,出生年月,并以出生年月按降序排列。
(10)统计“信息管理”专业的人数。
(11)查询至少选修了二门及以上课程的学生学号。
(12)查询至少被2位学生选修的课程号。
实验六:
数据查询
(2)
一、实验目的
通过对SELECT的使用,掌握SELECT语句的结构及其应用,掌握连接查询。
二、原理解析
语法格式为:
SELECT〈目标列组〉
FROM〈数据源〉
[WHERE〈元组选择条件〉]
[GROUPBY〈分列组〉[HAVING〈组选择条件〉]]
[ORDERBY〈排序列1〉〈排序要求1〉[,…n]]
(1)SELECT子句
SELECT子句用于指明查询结果集的目标列。
(2)FROM子句
FROM子句用于指明查询的数据源。
(3)WHERE子句
WHERE子句通过条件表达式描述关系中元组的选择条件。
(4)GROUPBY子句
GROUPBY子句的作用是按分组列的值对结果集分组。
(5)ORDERBY子句
ORDERBY子句的作用是对结果集进行排序。
三、实验内容
1.查询学号为2020102的学生所选的全部课程的课程名和成绩。
2.查询没有学生选的课程号。
3.查询没有成绩的课程号,课程名。
4.查询没有选修102号课程的学生姓名。
5.查询选修了101课程并且成绩在80分以上的所有学生(学号、姓名)。
6.查询与“王玲玲”在同一专业学习的学生姓名。
7.查询选修了课程名为“计算机文化基础”的学生学号和姓名。
8.查询选修了课程名为“计算机文化基础”或“数据结构”的学生学号和姓名。
(用连
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统原理 数据库 系统 原理 实验 指导书
![提示](https://static.bdocx.com/images/bang_tan.gif)