《数据库系统原理》实验指导书

更新时间:2023-10-08 03:30:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《数据库系统原理》实验指导书

《数据库系统原理》实验指导书

实验1 熟悉SQL Server 2000环境及数据库文件管理

一、实验目的

1、掌握登录SQL Server 2000的方法,熟悉SQL Server实用工具的使用 ; 2、了解SQL Serve数据库的存储结构,掌握估算数据库大小技术; 3、掌握创建数据库技术,掌握扩大和压缩数据库技术;

4、掌握使用企业管理器工具和T-SQL语句及系统存储过程对数据库进行管理。

二、实验要求

1、熟悉SQL Server 2000的工作环境,了解SQL Server主要管理工具的用途和使用方法。

2、掌握在SQL Server 2000环境下,利用企业管理器和T-SQL语言创建和管理数据库的方法。

三、实验设备、环境

设备:奔腾II或奔腾II以上计算机

环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中文版

四、实验原理、方法

上机操作

五、实验步骤及内容

(一)实验步骤

1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容

1、熟悉SQL Server 2000管理工具

(1)企业管理器(Enterprise Manager) (2)查询分析器(Query Analyzer) (3)服务管理器(Service Manager) (4)事件探查器(Profiler)

(5)导入和导出数据(Import and Export Data) (6)SQL Server其他管理工具 2、数据库文件管理

(1)数据库的创建和删除。

① 在企业管理器中建立一个图书读者库。图书读者数据库中将包括一个数据文件和一个日志文件,各文件的属性见表1-1。

214

《数据库系统原理》实验指导书

表1-1图书读者数据库中各列的属性 参数 数据库名 逻辑数据文件名 操作系统数据文件名 数据文件的初始大小 数据文件的最大大小 数据文件增长幅度 日志逻辑文件名 操作系统日志文件名 日志文件初始大小 日志文件增长幅度 参数值 图书读者库 Readbook_dat F:\\04计\\学号\\readbook_dat.Mdf 2MB 10MB 原来的15% Readbook_log F:\\04计\\学号\\readbook_log.Ldf 1MB,且文件增长不受限制 2MB ② 删除上题所建的数据库然后用T-SQL语句重新创建。 (2)修改数据库

① 查看图书读者数据库的属性及数据文件和日志文件的空间使用情况。

② 在企业管理器中,首先扩大图书读者数据库的主数据文件的大小,然后查看扩大后的数据库属性,接着收缩主数据文件到定义时的大小。

③ 用T-SQL语句为图书读者数据库添加一个大小为2MB的次数据文件。

六、实验报告要求及记录、格式

按金陵科技学院《实验报告(工科)》格式填写

七、实验注意事项

1、实验过程中注意爱护计算机,实验完毕要按正常操作关闭计算机。 2、不要随意更改SA的登录密码

八、阅读、讨论及思考题

1、仔细阅读《实训教程》第一、二章 2、思考:

(1)数据库包括哪些数据库对象?各对象的主要作用是什么? (2)数据库文件和日志文件的异同点是什么? (3)文件组的作用是什么?

(4)简述SQL Server的4个系统数据库及其作用?九、实验结果讨论、体会和收获

215

《数据库系统原理》实验指导书

实验2 表和表数据的操作

一、实验目的

掌握在SQL Server 2000环境下,利用企业管理器和T-SQL语言创建和管理表的方法。

二、实验要求

1、掌握利用“企业管理器”创建数据表的方法; 2、学会利用T-SQL语句建立自定义数据类型; 3、掌握使用T-SQL语句建立数据表的方法;

4、掌握数据表的修改及删除方法(界面方式及语句方式); 5、使用“企业管理器”进行各种有关记录数据的操作;

6、掌握T-SQL中的INSERT、UPDATE及DELETE语句的使用方法;

三、实验设备、环境

设备:奔腾II或奔腾II以上计算机

环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中文版

四、实验原理、方法

上机操作

五、实验步骤及内容

(一)实验步骤

1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容 1、创建数据库

利用“企业管理器”创建学生成绩管理数据库,Stuscore_dat.mdf,2MB--10MB,按10%增长;Stuscore_log.ldf,1BM,按2MB增长。 2、创建数据表

(1)用“企业管理器”或查询分析器建立stuscore数据库中的学生表(Student)、班级表(Class)、课程表(Course)及成绩表(Grade),结构如下: (a) Student表的结构为: 字段名 SNO SName Sex ClsNO StuAddr Birthday Height 类型 Char(8) Varchar(10) Char(2) Char(6) Varchar(20) SmallDate DEC(4,2) 中文名 学号 姓名 性别 班级 住址 出生年月 身高 备注 主键 男、女 班级的编号,参照表Class 描述性说明 以米为单位表示学生的身高。 (b) Class表的结构为:

216

《数据库系统原理》实验指导书

字段名 ClsNO ClsName Director Specialty 字段名 CNO CName PCNO Credit 字段名 SNo CNO Scorce 类型 Char(6) Varchar(16) Varchar(10) Varchar(30) 类型 Char(4) Varchar(16) char(4) Tinyint 类型 Char(8) Char(4) Number(4,1) 中文名 班号 班名 辅导员 专业 中文名 课程号 课程名 先修课程 学分 中文名 学号 课程号 成绩 备注 备注 主键 对班级的描述信息 班级的辅导员 备注 主键 课程的名称 先修课程的课程号 (c) Course表的结构为: (d) Grade表的结构为: 学号,参照Student,与Course组成主键 课程号,参照Course (2)用“企业管理器”或系统存储过程sp_addtype创建用户自定义数据类型: studentNo,char(8),和courseNo,char(4)

(3)修改学生成绩管理数据库中的各表,学号和课程号应用自定义的数据类型。 (4)将表Student增加一列Department(系别)Char(2)。 3、表数据的操作

(1)向表(Student)中插入数据 SNO 19920101 19920102 19920306 19940107 SName 王军 李杰 王彤 吴杪 Sex 男 男 女 女 ClsNO CS01 CS01 MT04 PH08 StuAddr 下关40# 江边路96# 中央路94# 莲化小区74# Birthday 1976.12.21 1974.5.24 1977.3.18 1979.4.8 Height 1.76 1.72 1.65 1.60 插入数据之后使用命令:Select * from Student; 检查插入数据的正确性 (2)向表(Class)中插入数据 ClsNO CS01 MT04 PH08 ClsName 计算机一班 数学四班 物理八班 Director 王宁 陈晨 葛格 Specialty 计算机应用 数学 物理 插入数据之后使用命令:Select * from Class; 检查插入数据的正确性 (3)向表(Course )中插入数据 CNO 0001 0003

CName 数学 计算机基础 PCNO Null 0001 Credit 6 3 217

《数据库系统原理》实验指导书

0007 物理 0001 4 插入数据之后使用命令:Select * from Course; 检查插入数据的正确性 (4)向表(Grade )中插入数据 SNO 19920101 19920101 19920102 19920102 19920306 19920306 19940106 CNO 0001 0007 0001 0003 0001 0003 0007 Score 90 86 87 76 87 93 85 插入数据之后使用命令:Select * from Grade; 检查插入数据的正确性 (5)使用Delete语句删除表中数据

1. Delete from Grade where SNo=’19920101’ 2. 删除数据之后使用命令 Select * from Grade;

3. 检查仍存在数据的正确性

六、实验报告要求及记录、格式

按金陵科技学院《实验报告(工科)》格式填写

七、实验注意事项

1、实验过程中注意爱护计算机,实验完毕要按政党操作关闭计算机; 2、不要随意更改Sa的登录密码;

3、注意自己创建的数据库主文件及日志文件的保存文件名及位置。

八、阅读、讨论及思考题

1、仔细阅读《实训教程》第三章 2、思考:

(1)SQL Server2000提供了哪些基本的数据类型?

(2)SQL Server2000有哪些方法来保证数据的完整性约束? (3)DROP TABLE语句在使用时应该注意什么问题?

九、实验结果讨论、体会和收获

218

《数据库系统原理》实验指导书

实验3 关系、索引和视图

一、实验目的

1、掌握关系图的创建方法。

2、掌握创建索引、查看索引和删除索引的操作和方法。 3、掌握创建、查询、更新、修改和删除视图的操作和方法。

二、实验要求

1、掌握在SQL Server 2000环境下,利用企业管理器创建关系图,理解关系数据库中表间关系的参照引用完整性;

2、掌握在SQL Server 2000环境下,利用企业管理器创建、查看和管理视图; 3、掌握在SQL Server 2000环境下,利用企业管理器创建、查看和管理索引。

三、实验设备、环境

设备:奔腾II或奔腾II以上计算机

环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中文版

四、实验原理、方法

上机操作

五、实验步骤及内容

(一)实验步骤

1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容 1、创建关系图

根据实际情况,为学生成绩库(stuscore)创建关系图。试比较在 “对 INSERT 和 UPDATE 强制关系”选项选中或不选中情况下,对外键表中数据插入、更新有何影响? 2、索引的创建、查看和删除

(1)分别利用SQL Server企业管理器,为学生情况(xsqk)表创建一个基于总学分(total)和学号(xh)的索引IX_total_xh,其中总学分(total)按降序排列,当学号总学分相同时,按学号(xh)升序排列,填充因子为80%。

(2)利用查询分析器为学生情况(xsqk)表创建一个基于系别(dept)和班级(class)的索引IX_dept_class,其中按系别升序、班级降序排列,填充因子为70%。

(3)利用索引管理器查看索引。

(4)删除索引IX_total_xh。利用索引管理器(1)中的索引。 3、视图的创建、查询、修改和删除

(1)为学生情况(xsqk)表创建一个视图V_xsqk,以显示学生的学号、姓名、性别和出生年月等基本信息。

(2)创建一个视图V_XSCJ,以显示“101”号课程的学生成绩信息,如学号、姓名、课程名称、成绩和学分等。

(3)分别利用视图V_xsqk和V_XSCJ作查询和更新操作。

(4)利用企业管理器,修改V_xsqk视图的定义,为其增加一个条件,使得该视图只显

219

《数据库系统原理》实验指导书

示“0204计算机”班的学生的基本信息。

六、实验报告要求及记录、格式

按金陵科技学院《实验报告(工科)》格式填写

七、实验注意事项

1、实验过程中注意爱护计算机,实验完毕要按政党操作关闭计算机; 2、不要随意更改SA的登录密码;

3、注意自己创建的数据库主文件及日志文件的保存文件名及位置。

八、阅读、讨论及思考题

1、仔细阅读《实训教程》第五章 2、思考:

(1)SQL Server 2000数据库中表之间的关系主要分为哪几类? (2)视图的更新和修改有什么区别?如何进行相应的操作? (3)SQL Server 2000数据库中的索引可以分为哪几种?

九、实验结果讨论、体会和收获

220

《数据库系统原理》实验指导书

实验4 T-SQL程序设计

一、实验目的

1、掌握T-SQL中运算符和表达式的使用。

2、通过对Select的使用,掌握Select语句的结构及其应用。 3、掌握T-SQL中几个常用流程控制语句的使用。 4、掌握系统内置函数的概念及其应用。

5、通过定义和使用用户自定义函数,掌握自定义函数的概念及其应用

二、实验要求

掌握在SQL Server 2000环境下,利用企业管理器和查询分析器进行SQL数据查询。学习使用Select语句进行数据库的检索,掌握在Select语句中使用where子句、order by子句、group by子句以及between、like关键字。

学习T-SQL语言的几个常用语句、系统内置函数和用户自定义函数的使用方法。

三、实验设备、环境

设备:奔腾II或奔腾II以上计算机

环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中文版

四、实验原理、方法

上机操作

五、实验步骤及内容

(一)实验步骤

1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容

1、使用SQL查询分析器,对Pubs数据库完成如下查询操作:

1)简单查询

(1)查询所有作者的作者号、姓名信息;(authors表)

(2)查询所有作者的姓名和作者号信息,并在每个作者的作者号前面显示字符串“身份证号:”表明显示信息是身份证信息;(authors表)

(3)改变显示列名。显示所有作者的姓名信息和作者号信息,要求用“名”和“姓”来区别fname和lname,“作者编号”来区分作者号;(authors表)

(4)查询所有书在价格提高10%后的价格和书名信息;(titles表) (5)查询所有书的书号和税后价格。(titles表,royalty列表示税率); (6)查询所有作者的姓和“名的第一个字符”以及作者号;(authors表,SUBSTRING函数) (7)查询邮政编码大于9000的作者姓名和电话信息;(authors表) (8)查询在CA州的作者姓名和城市;(authors表)

(9)查询出版日期在1/1/1991到12/31/1991之间的书名(书名限制为38个字符)和出版日期;(titles表,SUBSTRING函数)

(10)查询书的类型是mod_cook或trad_cook的书名和它的类型;(titles表) (11)查询店名中包含Book的店的信息;(stores表);

221

《数据库系统原理》实验指导书

(12)查询所有无价格的图书;(titles表)

(13)查询书名以T开头或者出版号为0877,且价格大于16美元的书的信息;(titles表) (14)查询所有作者的所在城市和州名,要求没有重复信息;(authors表) (15)按照类型的升序和价格的降序显示书的信息;(titles表) 2)生成汇总数据

(1)计算多少种书已被定价;(titles表) (2)计算每本书的书号及它的售书总量;(sales表) (3)求销售量大于30的书号及销售数量;(sales表)

(4)显示在1994年1月1日到1994年10月31日间,每本书的销售总额;(sales表) 3)连接查询

(1)求每本杂志上刊登的文章;(titles, publishers表) (2)求某书店销售某书的数量;(titles, stores, sales表) (3)查询所有合著的书及其作者。 (4)显示所有已销售的书名。 4)子查询

(1)查询有销售记录的所有书信息,包括书的编号、书名、类型和价格; (2)求已销售的书的信息; 2、使用SQL查询分析器,对学生成绩管理(stuscore)数据库完成如下查询:

(1)在学生成绩库中查询出生年月在“1981-01-01”至“1982-05-01”之间的男生情况,并以出生年月按降序排列。

(2)统计“信息管理”专业的人数。

(3)统计每个学生每个学期的最低分、最高分及平均分。 3、流程控制语句

(1)xsqk表中若存在学号为“02020101”的学生,则显示已存在的信息,否则插入该学生的记录。然后从xsqk表中删除学号为“02020101”的学生记录,重新执行该程序,观察与上次有何不同。

(2)使用While语句求1到100之间的累加和,输出结果。 4、用户自定义函数的应用

(1)定义一个自定义函数,按出生年月计算年龄。然后从xsqk表中检索出含有年龄的学生信息。掌握用户自定义函数在数据库中的应用。

(2)定义一个用户自定义函数Scoer_Rechange,将成绩从百分制转化为五级记分制。将该用户定义函数用在查询每个学生的成绩中,给出五级记分制的成绩。

六、实验报告要求及记录、格式

按金陵科技学院《实验报告(工科)》格式填写

七、实验注意事项

1、实验过程中注意爱护计算机,实验完毕要按正常操作关闭计算机。

八、阅读、讨论及思考题

1、仔细阅读教材第三章:关系数据库标准语言SQL和《实训教程》第六、七章:T-SQL程序设计的内容;

2、思考:

(1)Transact-SQL中有哪些流程控制语句?说明它们各自的作用。

222

《数据库系统原理》实验指导书

(2)用户自定义函数与系统函数有何不同?

九、实验结果讨论、体会和收获

实验5 数据完整性

一、实验目的

正确理解数据库的数据完整性的概念、SQL Server的数据完整性类型,掌握SQL Server各种数据完整性的实施技术。

二、实验要求

1、掌握SQL Server提供的各种数据完整性的概念和管理技术。

2、掌握在SQL Server 2000环境下,实现数据完整性主要数据库对象(主键、外键、约束、规则、默认值)的创建和维护方法。

3、通过创建和执行存储过程,了解存储过程的基本概念,掌握使用存储过程的操作技巧和方法。

4、创建触发器,了解触发器的基本概念,理解触发器的功能,掌握使用触发器的操作技巧和方法。

三、实验设备

硬件设备:奔腾II或奔腾II以上计算机

软件环境:WINDOWS 2000/NT或WINDOWS 9X、SQL SERVER 2000中文版企业版或标准版。

四、实验原理、方法

上机操作

五、实验步骤及内容

(一)实验步骤

1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容 1、约束、默认与规则

1)约束在数据库中的应用

(1)用系统存储过程sp_helpconstraint查看xsqk表的约束。 (2)在“查询分析器”中输入插入一个学生信息的命令: insert into xsqk(Xh, Dept, Specialty, Name)

values(‘02020106’,’计算机’,’计算机应用’,’黄诚’)

(3)修改xsqk表,使用Check约束,使Sex列只能接受“男”或“女”,以强制执行域数据完整性。重做(1)。

(4)禁止xsqk表中的sex列上的约束:alter table xsqk nocheck constraint ck_xsqk (5)删除约束:alter table xsqk drop constraint ck_xsqk。重做(1)。 (6)利用关系图,建立xscj表与xsqk表与xskc表的主外键约束。 2)默认的应用

223

本文来源:https://www.bwwdw.com/article/jdud.html

Top