广东海洋大学数据库实验一报告.doc
,.GDOU-B-11-112广东海洋大学学生实验报告书(学生用表)实验名称实验1数据库及其对象创建与管理课程名称数据库原理及应用课程号16732201学院(系)信息学院专业信息管理与信息系统班级信管1111学生姓名陈梓哲学号201111671106实验地点海安A705实验日期2013/10/16实验一 数据库及其对象的创建与管理一、实验目的1、掌握用SSMS或Transact-SQL语句创建、查看、修改、删除数据库的方法;2、掌握数据库的备份和恢复方法;3、掌握数据库的分离和附加方法; 4、掌握用SSMS或Transact-SQL语句创建、修改、删除表及向其添加数据的方法。二、实验要求1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作;2、能认真独立完成实训内容;3、实验后做好实验总结,根据实验情况完成总结报告。三、实验内容1、用SSMS在 “对象资源管理器”中完成如下任务:(1)建立一个学生课程数据库。具体文件属性如下表:参数参数值数据库名Student逻辑数据文件名Student_dat操作系统数据文件名D: Student_dat.mdf数据文件的初始大小10MB数据文件的最大大小100MB数据文件增长幅度10%日志逻辑文件名Student_log操作系统日志文件名D: Student_log.ldf日志文件初始大小5MB日志文件增长幅度10 (2)再修改学生课程数据库Student的主数据文件的大小,使其扩大两倍,然后查看扩大后的数据库属性。2、用SSMS,在数据库Student中:(1)创建如下四个表,并设置相关的约束条件:S列名说明数据类型约束Sno学号整形主键Sname姓名字符(10)非空,唯一Ssex性别字符(2)取男或女Sage年龄短整形Sdept院系字符(20)可取空,默认 计算机系Course列名说明数据类型约束Cno课程号字符(4)主键Cname课程名字符(10)非空Tno教师号整形非空SC列名说明数据类型约束Sno学号整形外键Cno课程号字符(4)外键Grade成绩整数取0100Teacher列名说明数据类型约束Tno教师号整形主键Tname教师名字符(10)Sdept院系字符(20)可取空,默认 计算机系S表:Course表:SC表:Teacher表:(2) 用SSMS修改将刚才所创建表:在Course表中插入如下两列:列名说明数据类型约束Cpno先行课字符(4)Ccredit学分整数非空将SC表中列Grade的类型改为smallint在S表中创建CHECK约束,约束名为Sagechk,要求实现年龄在1545取值在Course表中创建外键约束,约束名为Fk_Tno,要求实现Course表中的Tno必须参照Teacher表的Tno取值。删除Course表中Tno列(3)删除将刚才所创建Teacher表(4)向表插入以下数据 SSnoSnameSsexSageSdept1001王勇男20电子系1002刘梅女19计算机系1003王芳女18网络系1004张兵男17软件系CourseCnoCnameCpnoCcredit1数据库542数学NULL23信息系统144操作系统635数据结构746数据处理NULL27C+程序设计语言64SCSnoCnoGrade1001192100128510013881002290100325510042703、用SSMS方法完成如下数据库的分离和附加: (1)分离Student数据库 附加Student数据库4. 用SSMS方法完成如下数据库的备份和恢复: ( 选作实验)(1)备份数据库创建备份设备,其名称为bk_Student0,保存文件为D: Student0.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student0中。对Student数据库进行完全备份 在Student数据库中,创建一张表temp1(学号,课程号,成绩,学分)并对Student数据库进行第一次差异备份,备份到备份设备bk_Student1中在Student数据库中,再创建一个用户表:temp2(学号,课程号,成绩,学分),并对Student数据库进行第二次差异备份,备份到备份设备bk_Student2中。(2)删除Student数据库(3)恢复数据库从备份设备bk_ Student0中恢复Student数据库,并查看表temp1和temp2是否存在?表temp1和temp2不存在: 再次删除数据库Student,然后将Student数据库恢复到第一次差异备份后的状态,并查看表temp1和temp2是否存在?表temp1存在但表temp2不存在:再次删除数据库Student,然后将Student数据库恢复到第二次差异备份后的状态,并查看表temp1和temp2是否存在?表temp1和temp2都存在:5、用T-SQL语句完成如下任务:(1)建立一个学生课程数据库。具体文件属性如下表:参数参数值数据库名Student1逻辑数据文件名Student0_dat操作系统数据文件名D: Student0_dat.mdf数据文件的初始大小10MB数据文件的最大大小100MB数据文件增长幅度10%日志逻辑文件名Student0_log操作系统日志文件名D: Student0_log.ldf日志文件初始大小5MB日志文件增长幅度10(2)用T-SQL语句为Student1数据库添加一个大小为10MB的次数据文件。次数据文件的逻辑文件名和物理文件名分别为:Student1_dat、D: Student1_dat.mdf,其它设置与日志文件相同。(3)用存储过程sp_helpdb dbname= name 、sp_helpfile filename = name分别用于查看该数据库结构信息及相应的文件信息是否正确。 sp_helpdb dbname= name sp_helpfile filename = name6、用T-SQL语句,完成下列表的创建、修改、删除及数据的插入:(1)创建如下四个表S列名说明数据类型约束Sno学号整形主键Sname姓名字符(10)非空,唯一Ssex性别字符(2)取男或女Sage年龄短整形Sdept院系字符(20)可取空,默认 计算机系Course列名说明数据类型约束Cno课程号字符(4)主键Cname课程名字符(10)非空Tno教师号整形非空SC列名说明数据类型约束Sno学号整形外键Cno课程号字符(4)外键Grade成绩整数取0100Teacher列名说明数据类型约束Tno教师号整形主键Tname教师名字符(10)Sdept院系字符(20)可取空,默认 计算机系(2)修改刚才所创建表:在Course表中插入如下两列:列名说明数据类型约束Cpno先行课字符(4)Ccredit学分整数非空将SC表中列Grade的类型改为smallint在S表中创建CHECK约束,约束名为Sagechk,要求实现年龄在1545取值CREAT 在Course表中创建外键约束,约束名为Fk_Tno,要求实现Course表中的Tno必须参照Teacher表的Tno取值。删除Course表中Teacher列Alter table Course Drop column Teacher老师,course表中没有teacher列! (3) 删除将刚才所创建Teacher表(4)向表插入以下数据 SSNOSNAMESSEXSAGESDEPT1001王勇男20电子系1002刘梅女19计算机系1003王芳女18网络系1004张兵男17软件系CourseCNOCNAMECPNOCCREDIT1数据库542数学NULL23信息系统144操作系统635数据结构746数据处理NULL27C+程序设计语言64SCSNOCNOGRADE1001192100128510013881002290100325510042707、用T-SQL完成如下数据库的分离和附加:(1)分离Student数据库 附加Student数据库8. 用T-SQL完成如下数据库的备份和恢复: ( 选作实验)(1)备份数据库创建备份设备,其名称为bk_Student,保存文件为D: Student.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student中。在Student数据库中,创建一张表temp1(学号,课程号,成绩,学分)并对Student数据库进行第一次差异备份,备份到备份设备bk_Student中在Student数据库中,再创建一个用户表:temp2(学号,课程号,成绩,学分),并对Student数据库进行第二次差异备份,备份到备份设备bk_Student中。(2)删除Student数据库 (3)恢复数据库从备份设备bk_ Student中恢复Student数据库,并查看表temp1和temp2是否存在? 此时表temp1和temp2不存在再次删除数据库Student,然后将Student数据库恢复到第一次差异备份后的状态,并查看表temp1和temp2是否存在? 此时temp1存在,temp2不存在再次删除数据库Student,然后将Student数据库恢复到第二次差异备份后的状态,并查看表temp1和temp2是否存在? 此时temp1和temp2都存在四、思考题1如何收缩数据库,在什么情况下需要收缩数据库?(1)自动收缩数据库:将 AUTO_SHRINK 数据库选项设置为 ON 后,数据库引擎将自动收缩具有可用空间的数据库。(2)手动收缩数据库:使用 DBCC SHRINKDATABASE 语句或 DBCC SHRINKFILE 语句来手动收缩数据库或数据库中的文件。数据库中的每个文件都可以通过删除未使用的页的方法来减小。尽管数据库引擎会有效地重新使用空间,但某个文件多次出现无需原来大小的情况后,就有必要收缩文件。2什么是备份设备,如何创建、删除备份设备?备份设备是用来存储数据库、事务日志或文件和文件组备份的存储介质。备份设备可以是硬盘、磁带或管道。可以使用用SSMS或Transact-SQL语句进行备份删除。具体方法如上。3如何进行数据库完全备份、差异备份、事务日志备份、文件和文件组备份,以及如何进行相应的数据库恢复?(注意:要用两种方法)用SSMS或Transact-SQL语句进行(具体操作如上所示)成绩指导教师日期注:请用A4纸书写,不够另附纸。第页,共页
收藏
编号:2603335
类型:共享资源
大小:748.90KB
格式:DOC
上传时间:2020-04-23
8
金币
- 关 键 词:
-
广东
海洋大学
数据库
实验
试验
报告
讲演
呈文
- 资源描述:
-
,.
GDOU-B-11-112
广东海洋大学学生实验报告书(学生用表)
实验名称
实验1数据库及其对象创建与管理
课程名称
数据库原理及应用
课程号
16732201
学院(系)
信息学院
专业
信息管理与信息系统
班级
信管1111
学生姓名
陈梓哲
学号
201111671106
实验地点
海安A705
实验日期
2013/10/16
实验一 数据库及其对象的创建与管理
一、实验目的
1、掌握用SSMS或Transact-SQL语句创建、查看、修改、删除数据库的方法;
2、掌握数据库的备份和恢复方法;
3、掌握数据库的分离和附加方法;
4、掌握用SSMS或Transact-SQL语句创建、修改、删除表及向其添加数据的方法。
二、实验要求
1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作;
2、能认真独立完成实训内容;
3、实验后做好实验总结,根据实验情况完成总结报告。
三、实验内容
1、用SSMS在 “对象资源管理器”中完成如下任务:
(1)建立一个学生课程数据库。具体文件属性如下表:
参数
参数值
数据库名
Student
逻辑数据文件名
Student_dat
操作系统数据文件名
D:\ Student_dat.mdf
数据文件的初始大小
10MB
数据文件的最大大小
100MB
数据文件增长幅度
10%
日志逻辑文件名
Student_log
操作系统日志文件名
D:\ Student_log.ldf
日志文件初始大小
5MB
日志文件增长幅度
10
(2)再修改学生课程数据库Student的主数据文件的大小,使其扩大两倍,然后查看扩大后的数据库属性。
2、用SSMS,在数据库Student中:
(1)创建如下四个表,并设置相关的约束条件:
S
列名
说明
数据类型
约束
Sno
学号
整形
主键
Sname
姓名
字符(10)
非空,唯一
Ssex
性别
字符(2)
取‘男’或‘女’
Sage
年龄
短整形
Sdept
院系
字符(20)
可取空,默认 ‘计算机系’
Course
列名
说明
数据类型
约束
Cno
课程号
字符(4)
主键
Cname
课程名
字符(10)
非空
Tno
教师号
整形
非空
SC
列名
说明
数据类型
约束
Sno
学号
整形
外键
Cno
课程号
字符(4)
外键
Grade
成绩
整数
取0~100
Teacher
列名
说明
数据类型
约束
Tno
教师号
整形
主键
Tname
教师名
字符(10)
Sdept
院系
字符(20)
可取空,默认 ‘计算机系’
S表:
Course表:
SC表:
Teacher表:
(2) 用SSMS修改将刚才所创建表:
①在Course表中插入如下两列:
列名
说明
数据类型
约束
Cpno
先行课
字符(4)
Ccredit
学分
整数
非空
②将SC表中列Grade的类型改为smallint
③在S表中创建CHECK约束,约束名为Sagechk,要求实现年龄在15~45取值
④在Course表中创建外键约束,约束名为Fk_Tno,要求实现Course表中的Tno必须参照Teacher表的Tno取值。
⑤删除Course表中Tno列
(3)删除将刚才所创建Teacher表
(4)向表插入以下数据
S
Sno
Sname
Ssex
Sage
Sdept
1001
王勇
男
20
电子系
1002
刘梅
女
19
计算机系
1003
王芳
女
18
网络系
1004
张兵
男
17
软件系
Course
Cno
Cname
Cpno
Ccredit
1
数据库
5
4
2
数学
NULL
2
3
信息系统
1
4
4
操作系统
6
3
5
数据结构
7
4
6
数据处理
NULL
2
7
C++程序设计语言
6
4
SC
Sno
Cno
Grade
1001
1
92
1001
2
85
1001
3
88
1002
2
90
1003
2
55
1004
2
70
3、用SSMS方法完成如下数据库的分离和附加:
(1)分离Student数据库 ⑵附加Student数据库
4. 用SSMS方法完成如下数据库的备份和恢复: ( 选作实验)
(1)备份数据库
①创建备份设备,其名称为bk_Student0,保存文件为D:\ Student0.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student0中。
对Student数据库进行完全备份
②在Student数据库中,创建一张表temp1(学号,课程号,成绩,学分)并对Student数据库进行第一次差异备份,备份到备份设备bk_Student1中
③在Student数据库中,再创建一个用户表:temp2(学号,课程号,成绩,学分),并对Student数据库进行第二次差异备份,备份到备份设备bk_Student2中。
(2)删除Student数据库
(3)恢复数据库
①从备份设备bk_ Student0中恢复Student数据库,并查看表temp1和temp2是否存在?
表temp1和temp2不存在:
② 再次删除数据库Student,然后将Student数据库恢复到第一次差异备份后的状态,并
查看表temp1和temp2是否存在?
表temp1存在但表temp2不存在:
③再次删除数据库Student,然后将Student数据库恢复到第二次差异备份后的状态,并查
看表temp1和temp2是否存在?
表temp1和temp2都存在:
5、用T-SQL语句完成如下任务:
(1)建立一个学生课程数据库。具体文件属性如下表:
参数
参数值
数据库名
Student1
逻辑数据文件名
Student0_dat
操作系统数据文件名
D:\ Student0_dat.mdf
数据文件的初始大小
10MB
数据文件的最大大小
100MB
数据文件增长幅度
10%
日志逻辑文件名
Student0_log
操作系统日志文件名
D:\ Student0_log.ldf
日志文件初始大小
5MB
日志文件增长幅度
10
(2)用T-SQL语句为Student1数据库添加一个大小为10MB的次数据文件。次数据文件的逻辑文件名和物理文件名分别为:Student1_dat、D:\ Student1_dat.mdf,其它设置与日志文件相同。
(3)用存储过程sp_helpdb [[@dbname=] name] 、sp_helpfile [[@filename =] name]
分别用于查看该数据库结构信息及相应的文件信息是否正确。
sp_helpdb [[@dbname=] name]
sp_helpfile [[@filename =] name]
6、用T-SQL语句,完成下列表的创建、修改、删除及数据的插入:
(1)创建如下四个表
S
列名
说明
数据类型
约束
Sno
学号
整形
主键
Sname
姓名
字符(10)
非空,唯一
Ssex
性别
字符(2)
取‘男’或‘女’
Sage
年龄
短整形
Sdept
院系
字符(20)
可取空,默认 ‘计算机系’
Course
列名
说明
数据类型
约束
Cno
课程号
字符(4)
主键
Cname
课程名
字符(10)
非空
Tno
教师号
整形
非空
SC
列名
说明
数据类型
约束
Sno
学号
整形
外键
Cno
课程号
字符(4)
外键
Grade
成绩
整数
取0~100
Teacher
列名
说明
数据类型
约束
Tno
教师号
整形
主键
Tname
教师名
字符(10)
Sdept
院系
字符(20)
可取空,默认 ‘计算机系’
(2)修改刚才所创建表:
①在Course表中插入如下两列:
列名
说明
数据类型
约束
Cpno
先行课
字符(4)
Ccredit
学分
整数
非空
②将SC表中列Grade的类型改为smallint
③在S表中创建CHECK约束,约束名为Sagechk,要求实现年龄在15~45取值
CREAT
④在Course表中创建外键约束,约束名为Fk_Tno,要求实现Course表中的Tno必须参照Teacher表的Tno取值。
⑤删除Course表中Teacher列
Alter table Course
Drop column Teacher
老师,course表中没有teacher列~~!
(3) 删除将刚才所创建Teacher表
(4)向表插入以下数据
S
SNO
SNAME
SSEX
SAGE
SDEPT
1001
王勇
男
20
电子系
1002
刘梅
女
19
计算机系
1003
王芳
女
18
网络系
1004
张兵
男
17
软件系
Course
CNO
CNAME
CPNO
CCREDIT
1
数据库
5
4
2
数学
NULL
2
3
信息系统
1
4
4
操作系统
6
3
5
数据结构
7
4
6
数据处理
NULL
2
7
C++程序设计语言
6
4
SC
SNO
CNO
GRADE
1001
1
92
1001
2
85
1001
3
88
1002
2
90
1003
2
55
1004
2
70
7、用T-SQL完成如下数据库的分离和附加:
(1)分离Student数据库
⑵附加Student数据库
8. 用T-SQL完成如下数据库的备份和恢复: ( 选作实验)
(1)备份数据库
①创建备份设备,其名称为bk_Student,保存文件为D:\ Student.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student中。
②在Student数据库中,创建一张表temp1(学号,课程号,成绩,学分)并对Student数据库进行第一次差异备份,备份到备份设备bk_Student中
③在Student数据库中,再创建一个用户表:temp2(学号,课程号,成绩,学分),并对Student数据库进行第二次差异备份,备份到备份设备bk_Student中。
(2)删除Student数据库
(3)恢复数据库
①从备份设备bk_ Student中恢复Student数据库,并查看表temp1和temp2是否存在?
此时表temp1和temp2不存在
②再次删除数据库Student,然后将Student数据库恢复到第一次差异备份后的状态,
并查看表temp1和temp2是否存在?
此时temp1存在,temp2不存在
③再次删除数据库Student,然后将Student数据库恢复到第二次差异备份后的状态,并
查看表temp1和temp2是否存在?
此时temp1和temp2都存在
四、思考题
1.如何收缩数据库,在什么情况下需要收缩数据库?
(1)自动收缩数据库:将 AUTO_SHRINK 数据库选项设置为 ON 后,数据库引擎将自动收缩具有可用空间的数据库。
(2)手动收缩数据库:使用 DBCC SHRINKDATABASE 语句或 DBCC SHRINKFILE 语句来手动收缩数据库或数据库中的文件。
数据库中的每个文件都可以通过删除未使用的页的方法来减小。尽管数据库引擎会有效地重新使用空间,但某个文件多次出现无需原来大小的情况后,就有必要收缩文件。
2.什么是备份设备,如何创建、删除备份设备?
备份设备是用来存储数据库、事务日志或文件和文件组备份的存储介质。备份设备可以是硬盘、磁带或管道。
可以使用用SSMS或Transact-SQL语句进行备份删除。具体方法如上。
3.如何进行数据库完全备份、差异备份、事务日志备份、文件和文件组备份,以及如何进行相应的数据库恢复?(注意:要用两种方法)
用SSMS或Transact-SQL语句进行(具体操作如上所示)
成绩
指导教师
日期
注:请用A4纸书写,不够另附纸。 第 页,共 页
展开阅读全文
淘文阁 - 分享文档赚钱的网站所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。