《SQL Server数据库设计》 实验指导书.doc
《《SQL Server数据库设计》 实验指导书.doc》由会员分享,可在线阅读,更多相关《《SQL Server数据库设计》 实验指导书.doc(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、SQL Server数据库设计 实验指导书软件学院网络工程谭丹丹辽宁科技大学 2012-8-27目 录实验一 SQL Server管理工具3实验二 数据定义5实验三 简单查询11实验四 高级查询15实验五 数据更新17实验六 索引和视图19实验七 数据库完整性23实验八 数据库编程25实验九 数据库安全性27实验十 数据库备份与还原32实验一 SQL Server管理工具一、实验目的: 1.掌握SQL Server Management Studio 集成环境的构成和基本操作。 2.熟悉服务器管理的基本操作。3.熟悉联机丛书与教程的实用。二、实验预习与准备: 1.掌握SQL Server Ma
2、nagement Studio 集成环境的构成和基本操作。 2.利用查询编辑器新建查询。 3.SQL Server2008的服务器管理。 4.SQL Server2008的联机丛书和教程。三、实验内容及步骤:1SQL Server Management Studio的启动和退出(1)启动SQL Server Management Studio。 (2)连接服务器。“服务器类型”、“服务器名称”、“身份验证”。 (3)退出SQL Server Management Studio。 2SQL Server Management Studio的基本操作(1)菜单栏的操作。显示“已注册的服务器”窗口(
3、2)工具栏的操作。若要在窗口中显示常见模板的相关信息,则需要找到“模板资源管理器”按钮,即可打开窗口。(3)“对象资源管理器”窗口。系统将所有已连接的数据库服务器及其子对象以树状结构显示在该窗口中。查看“数据库”项中所包括的内容。在“对象资源管理器”窗口工具栏中,找到“连接”和“断开连接”按钮,来实现SQL Server Management Studio与指定服务的连接和断开连接功能。3新建查询(1)在SQL Server Management Studio中单击工具栏中的“新建查询”按钮,在“文档”窗口中打开查询编辑器代码窗口。(2)在查询编辑器中输入如下TransactSQL语句:(3)
4、单击工具栏中的“以文本格式显示结果”按钮,执行并查看结果。(4)单击工具栏中的“以网格显示结果”按钮,执行并查看结果。4启动和停止SQL Server 2008服务器(1)使用“SQL Server配置管理器”启动、暂停和关闭服务器。(2)使用SQL Server Management Studio配置服务器。(3)使用SQL Server 服务启动和关闭服务器。5配置SQL Server 2008服务器(1)查看当前SQL Server 2008软件的版本和根目录。(2)把服务器身份验证修改为“SQL Server 和Windows身份验证方式”。实验二 数据定义一、实验目的: 1.掌握数据
5、库、表的基本概念。 2.掌握创建、修改数据库和表结构的方法。 3.掌握管理数据库的方法。4.掌握录入、浏览数据的方法。二、实验预习与准备: 1数据库、表的基本概念。 2利用SQL Server Management Studio和Transact-SQL语句创建、修改数据库和表结构。 3利用SQL Server Management Studio和Transact-SQL语句管理数据库。 4SQL Server 2008的系统数据类型。三、实验内容及步骤:1利用SQL Server Management Studio创建一个名为student的数据库。该数据库的主数据文件逻辑名称为studen
6、t,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为student_log,初始大小为1MB,最大尺寸为5MB,增长速度为1MB。存放路径为E:DATA,其他均采用默认设置。2利用Transact-SQL语句创建数据库test,采用默认参数。若该数据库已存在,则删除后重建。(利用模板操作)系统将默认在SQL Server2008的安装路径mssql.1mssqldata文件夹下创建数据文件test.mdf和事务日志文件test_log.ldf。3修改数据库test,将数据文件的逻辑文件名修改为“测试数据”,操作系统文件名修改为e:datatest.mdf。将事
7、务日志文件的逻辑文件名修改为“测试数据日志”,操作系统文件名修改为 e:datatest_log.ldf,并且为数据库新增一个逻辑名称为“测试数据2”的次要数据文件。(1)查询编辑器中输入如下代码并执行:系统给出如下提示信息:(2)将数据库test设置为脱机状态。(3)将文件实际移至新目录中。(4)将数据库test重新设置为联机状态(5)查询编辑器中输入如下添加次要文件的代码并执行:可在查看test数据库的属性,查看数据库的修改情况。4.利用SQL Server Management Studio将test数据库分离后重新附加到当前SQL Server 实例中。5利用Transact-SQL语
8、句将test数据库重命名为“测试”,调用系统存储过程将“测试”重命名为test。(1)在编辑器中输入如下代码并执行:系统给出如下提示信息。(2)在查询编辑器中输入如下调用系统存储过程的代码并执行:系统给出如下提示信息。6利用Transact-SQL语句将test数据库删除。Student数据库中包含5张表,结构如下:student表(学生信息表)字段名称类型宽度允许空值主键说明snochar10否是学生学号snamechar10否学生姓名sexchar2是学生性别birthdaysmalldatetime4是学生出生日期dnochar10是学生所在院系编号spnochar10是专业代码clas
9、snochar10是班级号entimesmalldatetime4是学生入校时间homevarchar50是学生家庭住址telvarchar50是学生联系电话course表(课程信息表)字段名称类型宽度允许空值主键说明cnochar10否是课程编号spnochar10是专业代码cnamechar20否课程名称ctnotinyint1是课程类型编号experimenttinyint1是实验时数lecturetinyint1是授课学时semestertinyint1是开课学期credittinyint1是课程学分student_course(学生选课成绩表)字段名称类型宽度允许空值主键说明snoc
10、har10否是学生学号cnochar10否是课程编号scoretinyint1是学生成绩teacher表(教师信息表)字段名称类型宽度允许空值主键说明tnochar10否教师编号tnamechar10否教师姓名sexchar2是教师性别birthdaysmalldatetime4是教师出生日期dnochar10是教师所在院系编号pnotinyint1是教师职务或职称编号homevarchar50是教师家庭住址zipcodechar10是邮政编码telvarchar50是联系电话emailvarchar50是电子邮件teacher_course表(教师上课课表)字段名称类型宽度允许空值主键说明t
11、icdsmallint2否是上课编号tnochar10是教师编号spnochar10是专业代码classnochar10是班级号cnochar10否课程编号semesterchar10是学期schoolyearchar10是学年classtimevarchar50是上课时间classroomvarchar50是上课地点weektimetinyint1是每周课时数7利用SQL Server Management Studio在student数据库中创建student表和course表。8利用Transact-SQL语句创建teacher表、student_course表、teacher_cour
12、se表。9利用SQL Server Management Studio修改表结构(1)为student表增加一列email(电子邮件),数据类型nchar(50)(2)修改course表中ctno列的数据类型为char(10)(3)为student_course表增加一列usually(平均成绩),数据类型smallint。10. 利用Transact-SQL语句修改表结构(1)为student表增加籍贯列native,数据类型为char(10),允许为空。(2)修改student表中native列的数据类型为varchar(10).(3)删除teacher表中的zipcode列。11. 利用
13、Transact-SQL语句删除teacher表。实验三 简单查询一、实验目的: 1.掌握select各个子句的功能和检索数据的方法。 2.掌握where子句中like、in、between、is等逻辑运算符的使用。 3.掌握order by子句的使用。 4. 掌握聚集函数的使用。 5掌握group by子句的使用。二、实验预习与准备: 1利用selectfrom子句实现投影查询和设置结果集格式。 2利用where子句实现数据过滤。 3order by子句的使用。4聚集函数的使用。5利用Group by子句和having子句实现分组查询。三、实验内容及步骤:首先启动数据库引擎,增加以下3张表及
14、数据Teacher表Teacher_course表Class表1查询所有的学生的学号、姓名、性别、出生日期。2.查询所有课程的课程名、课程学分、专业代码和课程类型。3.查询有学生选修的课程的课程号4.查询所有的学生的学号、姓名、年龄。年龄的别名为age。(提示:函数year()可以用来求年份。)5查询“090502”班的所有学生的基本信息。6查询年龄大于22岁的男生的姓名,所在学院编号、专业代码和班级号。7. 查询出生日期在1990年1月1日后的学生的学号、姓名、性别、出生日期。8.查询不是“06”学院的学生的信息。9.查询选修课程且期末成绩不为空的学生的选课信息。10.查询email使用12
15、6邮箱的所有学生的学号、姓名和电子邮箱地址。11查询第二个字是“岩”的学生的学号和姓名。12. 查询生日在“1990/09/01”和“1991/08/31”之间的学生的信息。13.查询选修c05109或c05103课程,并且期末成绩在90-100分之间的学生学号,课程号和期末成绩。14.查询所有学生信息,查询结果按照年龄大小从大到小排序。15. 查询所有学生信息,查询结果按照院系编号的升序排列,同一个学院的按照年龄大小从小到大排序。16. 查询选修了c05109 课程的学生的学号和成绩,按照成绩的降序排列。17查询选修了c05109 课程,并且期末成绩在前5名的学生学号、课程号和期末成绩。18
16、.查询编号05学院学生的人数,列名为“软件学院学生人数”。19.查询编号05学院女生的人数,列名为“软件学院女学生人数”。20.查询每个学院的人数,列名分别为“学院号”“学生人数”。21.查询“c05109”号课程的平均分、最高分、最低分,列名分别为“平均分”“最高分”“最低分”。 22.查询所有课程的课程号、平均分、最高分、最低分,按照平均分的降序排序。列名分别为“课程号”“平均分”“最高分”“最低分”。23.查询有3人以上选修的课程的课程号和选修人数,列名为“课程号”“选修人数”。实验四 高级查询一、实验目的: 1. 掌握多表连接查询的基本概念。 2掌握多表连接的各种方法。 3掌握嵌套查询
17、的方法。二、实验预习与准备: 1利用多表连接方式查询数据。 2利用嵌套方式查询数据。三、实验内容及步骤:首先创建2张表并录入如下数据表名:department(dno,dname) speciality(spno,spname) 1. 查询所有学生的学号,姓名,性别,所在学院、系、和班级的名字。2. 查询网络工程系的学生的学号,姓名及各科考试的课程名和成绩,查询结果按照学号升序排序,同一个学生按照成绩的降序排序。3(1)查询选修了c05103或者c05109号课程的学生的学号。(2)查询至少选修了c05103和c05109号课程的学生的学号。4查询所有教授或副教授的职工号,姓名,职称和所在学院
18、。5查询所有平时成绩在70分以下的学生的学号、姓名和学院。6查询所有期末成绩在70分以下的学生的学号,姓名及其70分以下的科目名称。7查询所有参加考试的学生的学号、姓名,考试科目及其成绩。8查询“韩吟秋”同学的考试科目,平时成绩,期末成绩,其各科的学分。9查询跟“何影”是同一个学院的其他学生的学号、姓名、年龄。10.查询教师的基本信息和教授课程信息,其中包括未分配课程的教师信息。11.查询090501班级中选修了韩晋升老师教授的课程的学生的学号、姓名、课程名和期末成绩。12.查询所有教授c05127号课程的教师信息。13.查询同时教授c05127和c05109号课程的教师信息。14.查询至少选
19、修了姓名为“韩吟秋”的学生所选修课程中一门课的学生的学号和姓名。15.查询没有被任何学生选修的课程编号、课程名称和学分。16. 查询所有考试70分以下的学生的学号,姓名及其70分以下的科目数。17. 查询2科以上(包括2科)90分以上的学生的学号,姓名及其90分以上的科目数。18. 查询软件学院各班的人数,显示班级名和人数。19. 查询每个同学所获得的总学分,显示学号、姓名和总学分。(假设没有及格的科目不能获得学分,及格的科目可以获得本科目的学分。)20. 在选修了“C语言”这门课程的学生中查询成绩大于或等于“C语言”这门课程的平均成绩的学生的学号、姓名、成绩。21查询每个同学的平均分,显示前
20、3名同学的学号、姓名、平均分。按照平均分从大到小排序,平均分相同按照学号的降序排序。22.查询选修课程且期末成绩不为空的学生人数。23.查询教授两门以上课程的教师编号和课程数。24.查询课程编号以05开头、被3名以上学生选修且期末成绩的平均分高于75分的课程号、选修人数和期末成绩平均分,并按平均分降序排序。实验五 数据更新一、实验目的:1掌握在SQL Server Management Studio中对表进行插入、修改和删除数据操作。2掌握使用SQL 语句对表进行插入、修改和删除数据操作。3理解SQL 语句对表数据库操作的灵活控制功能。二、实验预习与准备:1表数据的浏览。2表数据的插入、删除、
21、修改。三、实验内容及步骤:1在SQL Server Management Studio中对数据库student 中的表进行插入、删除数据的操作。(1)在数据库引擎的树形目录中展开数据库student,找到表并展开,则列出该数据库的所有对象,如表、视图、存储过程、默认和规则等。(2)选中“表”,将列出student 数据库的所有表(包括系统表和用户表),在此以用户表student 为例,选中该表,单击鼠标右键,弹出快捷菜单,执行“打开表”菜单项,打开该表,并向表中录入若干条记录。(3) 在数据库引擎中删除数据库student 中的表数据。在打开的表student 中,选定将要删除的行,单击鼠标右
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL Server数据库设计 SQL Server数据库设计 实验指导书 SQL Server 数据库 设计 实验 指导书
限制150内