数据库系统概论实验指导书.docx
- 文档编号:8326381
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:23
- 大小:22.79KB
数据库系统概论实验指导书.docx
《数据库系统概论实验指导书.docx》由会员分享,可在线阅读,更多相关《数据库系统概论实验指导书.docx(23页珍藏版)》请在冰豆网上搜索。
数据库系统概论实验指导书
实验一MSSQLSERVER2000环境及主要工具
一、实验目的:
1.了解MSSQLSERVER2000提供的各种工具及其功能。
2.掌握企业管理器(EnterpriseManager)、服务管理器(ServiceManager)、查询分析器(QueryAnalyzer)及联机文档(BooksOnline)的基本操作。
3.掌握通过企业管理器启动、关闭、注册和配置服务管理。
二、实验内容及步骤:
1.从开始菜单打开MSSQLSERVER2000的服务管理器,设置其服务器为本机服务器,服务为SQLServer,并启动该服务器。
练习SQLServer2000服务的开始、暂停、继续、停止等操作。
2.从开始菜单打开MSSQLSERVER2000企业管理器,并将企业管理器与上述启动的服务器连接。
3.对企业服务器进行配置,将其在操作系统启动时自动启动SQLServer的功能去掉;先将其身份验证修改为Windows和SQLServer共同验证,再修改为Windows验证。
4.观察企业管理器的各个组成部分,练习有关的操作。
5.打开查询分析器,观察查询分析器的组成部分,练习有关的操作。
6.练习SQLServer2000的联机丛书的使用,并使用联机丛书学习自己感兴趣的知识。
实验二数据定义
一、实验目的:
1.掌握使用SQLSERVER企业管理器及SQL语言创建数据库与表。
2.掌握使用SQLSERVER企业管理器及SQL语言修改数据库与表。
3.掌握使用SQLSERVER企业管理器及SQL语言删除数据库与表。
二、实验内容及步骤:
1.通过用企业管理器创建一个指定多个数据文件和日志文件的数据库,该数据库名称为jxsk,要求:
有1个10MB和1个20MB的数据文件和2个10MB的事务日志文件。
数据文件逻辑名称为jxsk1和jxsk2,物理文件名为jxsk1.mdf和jxsk2.mdf。
主文件是jxsk1,由primary指定,两个数据文件的最大尺寸分别为无限大和100MB,增长速度分别为10%和1MB。
事务日志文件的逻辑名为jxsklog1和jxsklog2,物理文件名为jxsklog1.ldf和jxsklog2.ldf,最大尺寸均为50MB,文件增长速度为1MB。
2.用企业管理器修改数据库
要求:
添加一个包含两个数据文件的文件组和一个事务日志文件到jxsk数据库中。
3.用企业管理器在jxsk数据库中建立如下表:
学生表:
Student
名称
列名
数据类型
说明
学号
Sno
Char(5)
NOTNULL主键
姓名
Sname
Varchar(20)
NOTNULL
性别
Ssex
Char
(2)
年龄
Sage
Int
所在系
Sdept
Varchar(50)
课程表:
Course
名称
列名
数据类型
说明
课程号
Cno
Varchar(3)
NOTNULL主键
课程名
Cname
Char(10)
NOTNULL
先行课
Cpon
Varchar(3)
学分
Ccredit
Smallint
选课表:
SC
名称
列名
数据类型
说明
学号
Sno
Char(5)
NOTNULL主键
课程名
Cname
Char(10)
NOTNULL主键
成绩
Grade
Int
默认值为0
4.查看表格:
显示当前数据库中所有对象的信息。
5.利用企业管理器删除表:
在企业管理器中,展开指定的数据库和表格项,用右键单击要删除的表,从快捷菜单中选择“除去表”选项,则会出现除去对象对话框。
单击“全部删除”按钮,即可删除表。
6.利用企业管理器删除数据库jxsk。
7.用SQL语言创建数据库jiaoxuedb:
CREATEDATABASEjiaoxuedb
ON
(NAME=jiaoxuedb_dat,FILENAME='d:
\jiaoxuedb_dat.mdf')
LOGON
(NAME=jiaoxuedb_log,FILENAME='d:
\jiaoxuedb_log.ldf')
GO
8.用SQL语言创建jiaoxuedb中的表:
USEjiaoxuedb
CREATETABLEStudent(
SnoCHAR(10)NOTNULL,
SnameCHAR(10)NOTNULL,
SexCHAR
(2)NULL,
AgeTINYINTNULL,
DeptCHAR(10)NULL)
CREATETABLETeacher(
TnoCHAR(10)NOTNULL,
TnameCHAR(10)NOTNULL,
SexCHAR
(2)NULL,
AgeTINYINTNULL,
ProfCHAR(10)NULL,
SalSMALLINTNULL,
CommSMALLINTNULL,
DeptCHAR(10)NULL)
CREATETABLECourse(
CnoCHAR(10)NOTNULL,
CnameCHAR(10)NOTNULL,
ChourTINYINTNULL,
CcreditTINYINTNULL)
CREATETABLESC(
SnoCHAR(10)NOTNULL,
CnoCHAR(10)NOTNULL,
SCORETINYINTNULL)
CREATETABLETC(
TnoCHAR(10)NOTNULL,
CnoCHAR(10)NOTNULL)
9.用ALTERTABLE语句向学生表增加“入学时间”列,其数据类型为日期型,然后再间接删除该列。
10.用ALTERTABLE语句将学生的年龄的数据类型改为半字长(Smallint),查看修改属性后再改回原数据类型。
11.用DROPTABLE语句删除已有的表。
12.用DROPDATABASE语句删除数据库jiaoxuedb。
13.学习SQLSERVER在线文档中关于建立表、删除表,修改表的详细用法。
实验三数据更新
一、实验目的:
掌握用SQL语句实现数据的插入、修改和删除。
二、实验内容及步骤:
1.重建实验二中的数据库jiaoxuedb和其中的表,并插入相应数据值。
插入jiaoxuedb库中各表值:
USEjiaoxuedb
/*InsertvaluestoStudentTable*/
INSERTINTOStudentVALUES('001101','宋大方','男',19,'计算机')
INSERTINTOStudentVALUES('002102','李王','男',20,'信息')
INSERTINTOStudentVALUES('991101','张彬','男',18,'计算机')
INSERTINTOStudentVALUES('991102','王蕾','女',19,'计算机')
INSERTINTOStudentVALUES('991103','张建国','男',18,'电子商务')
INSERTINTOStudentVALUES('991104','李平方','男',18,'计算机')
INSERTINTOStudentVALUES('991201','陈东辉','男',19,'计算机')
INSERTINTOStudentVALUES('991202','葛鹏','男',21,'电子商务')
INSERTINTOStudentVALUES('991203','潘桃芝','女',19,'电子商务')
INSERTINTOStudentVALUES('991204','姚一峰','男',18,'计算机')
INSERTINTOStudentVALUES('001102','许辉','女',22,'电子商务')
INSERTINTOStudentVALUES('001201','王一山','男',20,'计算机')
INSERTINTOStudentVALUES('001202','牛莉','女',19,'计算机')
INSERTINTOStudentVALUES('002101','李丽丽','女',19,'信息')
/*InsertvaluestoTeacherTable*/
INSERTINTOTeacherVALUES('000006','许红霞','女',39,'讲师',1100,1200,'计算机')
INSERTINTOTeacherVALUES('000007','许永军','男',57,'教授',2000,3000,'电子商务')
INSERTINTOTeacherVALUES('000008','李贵青','女',65,'教授',2000,3000,'计算机')
INSERTINTOTeacherVALUES('000009','王一凡','女',43,'讲师',1200,1200,'计算机')
INSERTINTOTeacherVALUES('000010','田峰','男',33,'助教',500,800,'信息')
INSERTINTOTeacherVALUES('000001','李英','女',39,'副教授',1500,2000,'电子商务')
INSERTINTOTeacherVALUES('000002','张雪','女',51,'教授',1900,3000,'信息')
INSERTINTOTeacherVALUES('000003','张朋','男',30,'讲师',1000,1200,'计算机')
INSERTINTOTeacherVALUES('000004','王平','女',28,'讲师',850,1200,'信息')
INSERTINTOTeacherVALUES('000005','李力','男',47,'教授',1800,3000,'计算机')
/*InsertvaluestoCourseTable*/
INSERTINTOCourseVALUEs('01001','计算机基础',60,3)
INSERTINTOCourseVALUEs('01002','程序设计',80,5)
INSERTINTOCourseVALUEs('02003','数据结构',60,6)
INSERTINTOCourseVALUEs('02001','数据库',80,6)
INSERTINTOCourseVALUEs('02002','计算机网络',60,6)
INSERTINTOCourseVALUEs('01003','微机原理',60,8)
INSERTINTOCourseVALUEs('02004','操作系统',60,6)
INSERTINTOCourseVALUEs('03001','软件工程',60,3)
INSERTINTOCourseVALUEs('03002','大型数据库',48,2)
INSERTINTOCourseVALUEs('03003','图像处理',48,2)
/*InsertvaluestoSCTable*/
INSERTINTOSCVALUES('991101','01001',88)
INSERTINTOSCVALUES('991102','01001',93)
INSERTINTOSCVALUES('991103','01001',90)
INSERTINTOSCVALUES('991101','01002',90)
INSERTINTOSCVALUES('991102','01002',98)
INSERTINTOSCVALUES('991103','01002',74)
INSERTINTOSCVALUES('991104','01002',85)
INSERTINTOSCVALUES('001201','01002',64)
INSERTINTOSCVALUES('991104','02001',33)
INSERTINTOSCVALUES('991104','01001',35)
INSERTINTOSCVALUES('991201','01001',76)
/*InsertvaluestoTCTable*/
INSERTINTOTCVALUES('000001','02001')
INSERTINTOTCVALUES('000008','02002')
INSERTINTOTCVALUES('000003','02001')
INSERTINTOTCVALUES('000011','02003')
INSERTINTOTCVALUES('000001','01001')
INSERTINTOTCVALUES('000002','01002')
INSERTINTOTCVALUES('000002','01003')
INSERTINTOTCVALUES('000004','02002')
INSERTINTOTCVALUES('000005','01001')
INSERTINTOTCVALUES('000006','01002')
INSERTINTOTCVALUES('000003','01003')
2.重建实验二中的数据库jxsk和其中的表,并插入相应的数值。
创建数据库jxsk:
CREATEDATABASEjxsk
ON
(NAME=jxsk_dat,FILENAME='d:
\jxsk_dat.mdf')
LOGON
(NAME=jxsk_log,FILENAME='d:
\jxsk_log.ldf')
GO
创建jxsk中的表:
USEjxsk
CREATETABLES(
SNOCHAR
(2)NOTNULL,
SNCHAR(8)NOTNULL,
SEXCHAR
(2)NULL,
AGETINYINTNULL,
DEPTCHAR(10)NULL)
CREATETABLET(
TNOCHAR
(2)NOTNULL,
TNCHAR(8)NOTNULL,
SEXCHAR
(2)NULL,
AGETINYINTNULL,
PROFCHAR(10)NULL,
SALSMALLINTNULL,
COMMSMALLINTNULL,
DEPTCHAR(10)NULL)
CREATETABLEC(
CNOCHAR
(2)NOTNULL,
CNCHAR(10)NOTNULL,
CTTINYINTNULL,
ID_TCTINYINTNULL)
CREATETABLESC(
SNOCHAR
(2)NOTNULL,
CNOCHAR
(2)NOTNULL,
SCORETINYINTNULL)
CREATETABLETC(
TNOCHAR
(2)NOTNULL,
CNOCHAR
(2)NOTNULL)
插入jxsk库中各表值:
USEjxsk
INSERTINTOSVALUES('S2','钱尔','男',18,'信息')
INSERTINTOSVALUES('S3','孙姗','女',20,'信息')
INSERTINTOSVALUES('S4','李思','男',21,'自动化')
INSERTINTOSVALUES('S5','周武','男',19,'计算机')
INSERTINTOSVALUES('S6','吴丽','女',20,'自动化')
INSERTINTOSVALUES('S7','李奇','男',18,'外语')
INSERTINTOSVALUES('S8','古明','男',NULL,'计算机')
INSERTINTOSVALUES('S9','赵亦','女',17,'计算机')
INSERTINTOTVALUES('T5','张兰','女',39,'副教授',1300,2000,'信息')
INSERTINTOTVALUES('T4','张雪','女',51,'教授',1600,3000,'自动化')
INSERTINTOTVALUES('T3','刘伟','男',30,'讲师',900,1200,'计算机')
INSERTINTOTVALUES('T2','王平','女',28,'讲师',800,1200,'信息')
INSERTINTOTVALUES('T1','李力','男',47,'教授',1500,3000,'计算机')
INSERTINTOCVALUES('C1','程序设计',60,1)
INSERTINTOCVALUES('C2','微机原理',80,2)
INSERTINTOCVALUES('C3','数字逻辑',60,3)
INSERTINTOCVALUES('C4','数据结构',80,4)
INSERTINTOCVALUES('C5','数据库',60,5)
INSERTINTOCVALUES('C6','编译原理',60,6)
INSERTINTOCVALUES('C7','操作系统',60,7)
INSERTINTOSCVALUES('S2','C5',57)
INSERTINTOSCVALUES('S2','C6',80)
INSERTINTOSCVALUES('S2','C7',NULL)
INSERTINTOSCVALUES('S3','C1',75)
INSERTINTOSCVALUES('S3','C2',70)
INSERTINTOSCVALUES('S3','C4',85)
INSERTINTOSCVALUES('S4','C1',93)
INSERTINTOSCVALUES('S4','C2',85)
INSERTINTOSCVALUES('S4','C3',83)
INSERTINTOSCVALUES('S5','C2',89)
INSERTINTOSCVALUES('S9','C1',90)
INSERTINTOSCVALUES('S9','C2',85)
INSERTINTOTCVALUES('T2','C5')
INSERTINTOTCVALUES('T3','C1')
INSERTINTOTCVALUES('T3','C5')
INSERTINTOTCVALUES('T4','C2')
INSERTINTOTCVALUES('T4','C3')
INSERTINTOTCVALUES('T5','C5')
INSERTINTOTCVALUES('T5','C7')
INSERTINTOTCVALUES('T1','C1')
INSERTINTOTCVALUES('T1','C4')
3.将数据库jiaoxuedb中所有的课程课时量增加10%。
4.将数据库jiaoxuedb中信息系全体学生的成绩置0。
5.将数据库jiaoxuedb中电子商务系学生年龄增加1岁。
6.将数据库jiaoxuedb中所课程成绩不及格的记录删除。
7.将数据库jiaoxuedb中计算机系所有学生的选课记录删除。
8.用SQLSERVER企业管理器实现以上操作。
9.学习SQLSERVER在线文档中关于表数据插入、删除、修改的详细用法。
实验四数据完整性
一、实验目的:
掌握关系数据库中的实体、参照及用户自定义完整性约束定义。
二、实验内容及步骤:
基于jiaoxuedb实验,需按实验三中的数据值建立数据库及其中的表。
1.对各表创建实体完整性。
USEjiaoxuedb
ALTERTABLEStudent
ADDCONSTRAINTPK_SNOPRIMARYKEY(Sno)
ALTERTABLETeacher
ADDCONSTRAINTPK_TNOPRIMARYKEY(Tno)
ALTERTABLECourse
ADDCONSTRAINTPK_CNOPRIMARYKEY(Cno)
ALTERTABLEStudent
ADDCONSTRAINTUNIQUE_SUNIQUE(Sno)
ALTERTABLETeacher
ADDCONSTRAINTUNIQUE_TUNIQUE(Tno)
ALTERTABLECourse
ADDCONSTRAINTUNIQUE_CUNIQUE(Cno)
2.创建表之间的参照完整性。
USEjiaoxuedb
ALTERTABLESCWITHNOCHECK
ADDCONSTRAINTFK_S_SCFOREIGNKEY(Sno)REFERENCESStudent(Sno)
ONDELETECASCADE
ALTERTABLESCWITHNOCHECK
ADDCONSTRAINTFK_C_SCFOREIGNKEY(Cno)REFERENCESCourse(Cno)
ONDELETECASCADE
ALTERTABLETCWITHNOCHECK
ADDCONSTRAINTFK_T_TCFOREIGNKEY(Tno)REFERENCESTeacher(Tno)
ONDELETECASCADE
ALTERTABLETCWITHNOCHECK
ADDCONSTRAINTFK_C_TCFOREIGNKEY(Cno)REFERENCESCourse(Cno)
ONDELETECASCADE
3.用不同的方法创建下面约束。
(1)“姓名”字段取唯一值:
USEjiaoxuedb
ALTERTABLEStudent
ADDCONSTRAINTUNIQUE_SNAUNIQUE(Sname)
ALTERTABLETeacher
ADDCONSTRAINTUNIQUE_TNAUNIQUE(Tname)
(2)“性别”字段取值为:
‘男’或‘女’;默认值:
‘男’;
USEjiaoxuedb
ALTERTABLETeacherWITHCHECK
ADDCONSTRAINTCHECK_T_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 概论 实验 指导书