《数据库系统原理》实验指导书Word文档格式.docx
《《数据库系统原理》实验指导书Word文档格式.docx》由会员分享,可在线阅读,更多相关《《数据库系统原理》实验指导书Word文档格式.docx(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服务器注册
四、实验步骤
●利用SQLServerManagementStudio
在已注册的服务器或对象资源管理器中,右键单击要启动的服务器实例,然后单击“启动”。
如果服务器名称旁边的图标上出现一个绿色箭头,则说明服务器已成功启动。
用同样的方法可以暂停和停止SQLServer实例。
●利用SQLServer配置管理器
(1)在“开始”菜单中,依次指向“所有程序”、“MicrosoftSQLServer2005”和“配置工具”,然后单击“SQLServer配置管理器”。
(2)在SQLServer配置管理器中,展开“服务”,再单击SQLServer。
(3)在详细信息窗格中,右键单击SQLServer(MSSQLServer),再单击“启动”。
如果工具栏上和服务器名称旁的图标上出现绿色箭头,则指示服务器已成功启动。
●练习使用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
[<
filespec>
[,…n]]
[,<
filegroup>
[,…n]]]
[LOGON{<
[,…n]}]
[COLLATE<
collation_name>
]
[FORLOAD|FORATTACH]
<
:
=[PRIMARY]
(NAME='
逻辑文件名'
FILENAME='
存放数据库的物理路径和文件名'
[,SIZE=数据文件的初始大小]
[,MAXSIZE=指定文件的最大大小]
[,FILEGROWTH=指出文件每次的增量])
4、SQLServer2005数据库的修改
SQLServer2005数据库的修改主要包括括修改数据库选项、扩充分配给数据库的数据或事务日志空间、压缩分配给数据库的数据或事务日志空间、添加数据和事务日志文件、创建文件组等。
本次实验要求掌握使用企业管理器工具和T-SQL语句及系统存储过程对数据库进行管理。
SQLServer2005数据库的修改可以在SQLServerManagementStudio中完成,也可以使用T-SQL的ALTERDATABASE语句进行。
ALTERDATABASE语句的语法结构如下:
ALTERDATABASEdatabase_name
{ADDFILE<
[,…n][TOFILEGROUPfilegroup_name]
/*在文件组中增加数据文件*/
|ADDLOGFILE<
[,…n]/*增加事务日志文件*/
|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语句创建表结构
●向表中添加列
ALTERTABLE表名
ADD列名列的描述
●删除列
DROPCOLUMN列名
●修改列
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
√
班级
12
专业
Varchar
30
学号
8
×
主键
姓名
性别
2
默认值:
男
出生年月
Smalldatetime
4
总学分
Tinyint
备注
Text
16
xskc结构
课程号
3
课程名
开课学期
规则:
1~8
学时
学分
xscj结构
成绩
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
02020102
张燕红
1981-10-20
02020103
杨勇
1982-3-15
02020104
王红庆
1983-5-17
02020105
陈园
1982-4-12
信息管理0201
信息管理
02020201
黄薇娜
1983-8-19
02020202
沈昊
1982-3-18
02020203
傅亮达
1983-1-22
02020204
任建刚
1981-12-21
02020205
叶小红
1983-7-16
表1学生课程表(xskc)数据样本
101
计算机文化基础
1
86
102
Qbasic
68
205
离散数学
64
206
VC
208
数据结构
210
操作系统
212
计算机组成
5
216
数据库原理
301
计算机网络
56
表2学生成绩表(xscj)数据样本
85
70
90
80
50
60
2、用向xskc表中插入如下表所示的两条记录。
假设学生成绩表(xskc)中有如下数据:
表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语句的结构及其应用,掌握连接查询。
1.查询学号为2020102的学生所选的全部课程的课程名和成绩。
2.查询没有学生选的课程号。
3.查询没有成绩的课程号,课程名。
4.查询没有选修102号课程的学生姓名。
5.查询选修了101课程并且成绩在80分以上的所有学生(学号、姓名)。
6.查询与“王玲玲”在同一专业学习的学生姓名。
7.查询选修了课程名为“计算机文化基础”的学生学号和姓名。
8.查询选修了课程名为“计算机文化基础”或“数据结构”的学生学号和姓名。
(用连