数据库系统原理 DBMS 实验报告 SQL.docx

上传人:b****6 文档编号:7066270 上传时间:2023-01-16 格式:DOCX 页数:23 大小:32.38KB
下载 相关 举报
数据库系统原理 DBMS 实验报告 SQL.docx_第1页
第1页 / 共23页
数据库系统原理 DBMS 实验报告 SQL.docx_第2页
第2页 / 共23页
数据库系统原理 DBMS 实验报告 SQL.docx_第3页
第3页 / 共23页
数据库系统原理 DBMS 实验报告 SQL.docx_第4页
第4页 / 共23页
数据库系统原理 DBMS 实验报告 SQL.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

数据库系统原理 DBMS 实验报告 SQL.docx

《数据库系统原理 DBMS 实验报告 SQL.docx》由会员分享,可在线阅读,更多相关《数据库系统原理 DBMS 实验报告 SQL.docx(23页珍藏版)》请在冰豆网上搜索。

数据库系统原理 DBMS 实验报告 SQL.docx

数据库系统原理DBMS实验报告SQL

 

学生实验报告册

 

课程名称:

数据库系统原理专业班级:

计算机科学与技术

学生学号:

9999999999学生姓名:

所属院部:

信息技术学院指导教师:

2099——2099学年第9学期

 

XX大学教务处制

实验报告书写要求

实验报告原则上要求学生手写,要求书写工整。

若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。

纸张一律采用A4的纸张。

实验报告书写说明

实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。

各院部可根据学科特点和实验具体要求增加项目。

填写注意事项

(1)细致观察,及时、准确、如实记录。

(2)准确说明,层次清晰。

(3)尽量采用专用术语来说明事物。

 

(4)外文、符号、公式要准确,应使用统一规定的名词和符号。

(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。

实验报告批改说明

实验报告的批改要及时、认真、仔细,一律用红色笔批改。

实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。

实验报告装订要求

实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:

熟悉SQLServer2000环境及数据库文件管理

实验序号:

1实验学时:

2学生姓名:

实验成绩:

实验地点:

A210实验日期:

2099-99-99

批改教师:

批改时间:

一、实验目的

1、掌握登录SQLServer2000的方法,熟悉SQLServer实用工具的使用;

2、了解SQLServe数据库的存储结构,掌握估算数据库大小技术;

3、掌握创建数据库技术,掌握扩大和压缩数据库技术;

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

二、实验要求

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

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

三、实验设备、环境

设备:

奔腾II或奔腾II以上计算机

环境:

WINDOWS98或WINDOWSNT、SQLSERVER2000中文版

四、实验步骤

1、分析题意,重点分析题目要求并给出解决方法;

2、创建以自己学号命名的文件夹;

3、根据题目要求启动SQLServer管理工具;

4、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中;

5、提交完成的实验结果。

五、实验内容

(一)熟悉SQLServer2000管理工具

1、企业管理器(EnterpriseManager)

2、查询分析器(QueryAnalyzer)

3、服务管理器(ServiceManager)

4、事件探查器(Profiler)

5、导入和导出数据(ImportandExportData)

6、SQLServer其他管理工具

(二)数据库文件管理

1、数据库的创建和删除。

①在企业管理器中建立一个图书读者库。

图书读者数据库中将包括一个数据文件和一个日志文件,各文件的属性见表1-1。

表1-1图书读者数据库中各列的属性(下表中******为学号)

参数

参数值

数据库名

图书读者库

逻辑数据文件名

Readbook_dat

操作系统数据文件名

******\readbook_dat.Mdf

数据文件的初始大小

2MB

数据文件的最大大小

10MB

数据文件增长幅度

原来的15%

日志逻辑文件名

Readbook_log

操作系统日志文件名

******\readbook_log.Ldf

日志文件初始大小

1MB,且文件增长不受限制

日志文件增长幅度

2MB

②删除上题所建的数据库然后用T-SQL语句重新创建。

2、修改数据库

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

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

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

六、阅读、讨论及思考题

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

2、思考:

(1)数据库包括哪些数据库对象?

各对象的主要作用是什么?

(2)数据库文件和日志文件的异同点是什么?

(3)文件组的作用是什么?

(4)简述SQLServer的4个系统数据库及其作用?

七、问题解答及实验结果

(1)数据库包括哪些数据库对象?

各对象的主要作用是什么?

数据库对象定义了数据库内容的结构。

它们包含在数据库项目中,数据库项目还可以包含数据生成计划和脚本。

在“解决方案资源管理器”中,数据库对象在文件中定义,并在数据库项目中的“架构对象”子文件夹下根据类型分组。

使用数据库对象时,可能会发现使用名为“架构视图”的数据库对象视图会更加直观。

在“架构视图”中,可以看到按类别划分的数据库对象。

(2)数据库文件和日志文件的异同点是什么?

文件和文件组

SQL2000使用一组操作系统文件映射数据库。

数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列操作系统文件中:

 

主要 该文件包含数据库的启动信息,并用于存储数据。

每个数据库都有一个主要数据文件。

次要 这些文件含有不能置于主要数据文件中的所有数据。

如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。

有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。

事务日志 这些文件包含用于恢复数据库的日志信息。

每个数据库都必须至少有一个日志文件。

文件只能是一个文件组的成员。

数据和事务日志信息不能属于同一文件或文件组。

事务日志文件不能属于任何文件组。

(3)文件组的作用是什么?

件组可以把数据库拆分成多个文件存储,然后文件分别放在不同的盘里面,这样读取数据的时候速度快,可并行读取。

另外,文件组可以使文件的组织更加有序,这样的组织就能让数据的读取更加有效率,而且便于管理

(4)简述SQLServer的4个系统数据库及其作用?

(1)用来组织和管理空间信息,并挖掘空间信息资源

(2)帮助数据使用者查询所需空间信息。

(3)组织和维护一个机构对数据的投资。

(4)用来建立空间信息的数据目录和数据交换中心。

通过数据目录和数据交换中心等提供的空间元数据内容,用户可以共享空间信息、维护数据结果,以及对它们进行优化等。

八、实验体会(遇到的问题及其解决方法,心得体会)

通过本次实验,掌握了登录SQLServer2000的方法,熟悉SQLServer实用工具的使用,了解SQLServe数据库的存储结构,掌握估算数据库大小技术,掌握创建数据库技术,扩大和压缩数据库技术,使用企业管理器工具和T-SQL语句及系统存储过程对数据库进行管理。

锻炼和培养了实际操作技能和动手能力,通过上机实验,加深对课堂所学理论的理解,最终达到综合锻炼和提高的目的。

 

实验项目名称:

表和表数据的操作

实验序号:

2实验学时:

2学生姓名:

实验成绩:

实验地点:

A210实验日期:

2099-99-99

批改教师:

批改时间:

一、实验目的

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

二、实验要求

1、掌握利用“企业管理器”创建数据表的方法;

2、学会利用T-SQL语句建立自定义数据类型;

3、掌握使用T-SQL语句建立数据表的方法;

4、掌握数据表的修改及删除方法(界面方式及语句方式);

5、使用“企业管理器”进行各种有关记录数据的操作;

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

三、实验设备、环境

设备:

奔腾II或奔腾II以上计算机

环境:

WINDOWS98或WINDOWSNT、SQLSERVER2000中文版

四、实验步骤

1、分析题意,重点分析题目要求并给出解决方法;

2、创建以自己学号命名的文件夹;

3、根据题目要求启动SQLServer管理工具;

4、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中;

5、提交完成的实验结果。

五、实验内容

(一)创建数据库

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

(二)创建数据表

1、用“企业管理器”或查询分析器建立stuscore数据库中的学生表(Student)、班级表(Class)、课程表(Course)及成绩表(Grade),结构如下:

(a)Student表的结构为:

字段名

类型

中文名

备注

SNO

Char(8)

学号

主键

SName

Varchar(10)

姓名

Sex

Char

(2)

性别

男、女

ClsNO

Char(6)

班级

班级的编号,参照表Class

StuAddr

Varchar(20)

住址

描述性说明

Birthday

SmallDate

出生年月

Height

DEC(4,2)

身高

以米为单位表示学生的身高。

(b)Class表的结构为:

字段名

类型

中文名

备注

ClsNO

Char(6)

班号

主键

ClsName

Varchar(16)

班名

对班级的描述信息

Director

Varchar(10)

辅导员

班级的辅导员

Specialty

Varchar(30)

专业

(c)Course表的结构为:

字段名

类型

中文名

备注

CNO

Char(4)

课程号

主键

CName

Varchar(16)

课程名

课程的名称

PCNO

char(4)

先修课程

先修课程的课程号

Credit

Tinyint

学分

(d)Grade表的结构为:

字段名

类型

中文名

备注

SNO

Char(8)

学号

学号,参照Student,与CNO组成主键

CNO

Char(4)

课程号

课程号,参照Course

Scorce

Number(4,1)

成绩

2、用“企业管理器”或系统存储过程sp_addtype创建用户自定义数据类型:

studentNo,char(8),和courseNo,char(4)

3、修改学生成绩管理数据库中的各表,学号和课程号应用自定义的数据类型。

4、将表Student增加一列Department(系别)Char(12)。

(三)表数据的操作

1、向表(Student)中插入数据

SNO

SName

Sex

ClsNO

StuAddr

Birthday

Height

19920101

王军

CS01

下关40#

1976.12.21

1.76

19920102

李杰

CS01

江边路96#

1974.5.24

1.72

19920306

王彤

MT04

中央路94#

1977.3.18

1.65

19940107

吴杪

PH08

莲化小区74#

1979.4.8

1.60

插入数据之后使用命令:

Select*fromStudent;检查插入数据的正确性

2、向表(Class)中插入数据

ClsNO

ClsName

Director

Specialty

CS01

计算机一班

王宁

计算机应用

MT04

数学四班

陈晨

数学

PH08

物理八班

葛格

物理

插入数据之后使用命令:

Select*fromClass;检查插入数据的正确性

3、向表(Course)中插入数据

CNO

CName

PCNO

Credit

0001

数学

Null

6

0003

计算机基础

0001

3

0007

物理

0001

4

插入数据之后使用命令:

Select*fromCourse;检查插入数据的正确性

4、向表(Grade)中插入数据

SNO

CNO

Score

19920101

0001

90

19920101

0007

86

19920102

0001

87

19920102

0003

76

19920306

0001

87

19920306

0003

93

19940106

0007

85

插入数据之后使用命令:

Select*fromGrade;检查插入数据的正确性

5、使用Delete语句删除表中数据

(1)DeletefromGradewhereSNo=’19920101’

(2)删除数据之后使用命令:

Select*fromGrade;

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

六、阅读、讨论及思考题

1、仔细阅读《实训教程》第三章

2、思考:

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

(2)SQLServer2000有哪些方法来保证数据的完整性约束?

(3)DROPTABLE语句在使用时应该注意什么问题?

七、问题解答及实验结果

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

数值型,字符型,文本型,日期型,逻辑型,浮点型

(2)SQLServer2000有哪些方法来保证数据的完整性约束?

sqlserver2000中数据库采用多种方法来保证数据完整性,包括外键、束约、规则和触发器。

系统很好地处理了这四者的关系,并针对不同的具体情况用不同的方法进行,相互交叉使用,相补缺点

(3)DROPTABLE语句在使用时应该注意什么问题?

DROPTABLE语句删除由CREATETABLE语句创建的表。

表将从数据库结构和磁盘文件中完全删除,且不能恢复。

该表的所有索引也同时被删除。

DROPTABLE语句在缺省模式下不减小数据库文件的大小。

空间会留给后来的INSERT语句使用。

要释放删除产生的空间,可以使用VACUUM命令。

若AUTOVACUUM模式开启,则空间会自动被DROPTABLE释放。

若使用可选的IFEXISTS子句,在删除的表不存在时就不会报错。

 

八、实验体会(遇到的问题及其解决方法,心得体会)

通过本次实验,掌握了利用“企业管理器”创建数据表的方法,学会利用T-SQL语句建立自定义数据类型,掌握了使用T-SQL语句建立数据表的方法,数据表的修改及删除方法,使用“企业管理器”进行各种有关记录数据的操作和T-SQL中的INSERT、UPDATE及DELETE语句的使用方法。

锻炼和培养了实际操作技能和动手能力,通过上机实验,加深对课堂所学理论的理解。

实验项目名称:

关系、索引和视图

实验序号:

3实验学时:

2学生姓名:

实验成绩:

实验地点:

A210实验日期:

2099-99-99

批改教师:

批改时间:

一、实验目的

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

2、掌握创建索引、查看索引和删除索引的操作和方法。

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

二、实验要求

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

2、掌握在SQLServer2000环境下,利用企业管理器创建、查看和管理视图;

3、掌握在SQLServer2000环境下,利用企业管理器创建、查看和管理索引。

三、实验设备、环境

设备:

奔腾II或奔腾II以上计算机

环境:

WINDOWS98或WINDOWSNT、SQLSERVER2000中文版

四、实验步骤

1、分析题意,重点分析题目要求并给出解决方法;

2、创建以自己学号命名的文件夹;

3、根据题目要求启动SQLServer管理工具;

4、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中;

5、提交完成的实验结果。

五、实验内容

(一)创建关系图

根据实际情况,为学生成绩库(stuscore)创建关系图。

试比较在“对INSERT和UPDATE强制关系”选项选中或不选中情况下,对外键表中数据插入、更新有何影响?

(二)索引的创建、查看和删除

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

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

3、利用索引管理器查看索引。

4、删除索引IX_total_xh。

利用索引管理器

(1)中的索引。

(三)视图的创建、查询、修改和删除

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

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

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

4、利用企业管理器,修改V_xsqk视图的定义,为其增加一个条件,使得该视图只显示“计算机0203”班的学生的基本信息。

六、阅读、讨论及思考题

1、仔细阅读《实训教程》第五章

2、思考:

(1)SQLServer2000数据库中表之间的关系主要分为哪几类?

(2)视图的更新和修改有什么区别?

如何进行相应的操作?

(3)SQLServer2000数据库中的索引可以分为哪几种?

七、问题解答及实验结果

属性的表间关系有四种类型:

一对一、一对多,多对一和多对多。

表的参照完整性,是主外键关系。

如果是某些数据库操作上的相关性,则是级联关系。

数据库之间的关系的作用可以使多个表联系起来,使它们有一定的关系,然后在以后的操作更为方便快捷

 

八、实验体会(遇到的问题及其解决方法,心得体会)

实验项目名称:

T-SQL程序设计

实验序号:

4实验学时:

4学生姓名:

实验成绩:

实验地点:

A210实验日期:

2099-99-99

批改教师:

批改时间:

一、实验目的

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

2、通过对Select的使用,掌握Select语句的结构及其应用。

3、掌握T-SQL中几个常用流程控制语句的使用。

4、掌握系统内置函数的概念及其应用。

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

二、实验要求

掌握在SQLServer2000环境下,利用企业管理器和查询分析器进行SQL数据查询。

学习使用Select语句进行数据库的检索,掌握在Select语句中使用where子句、orderby子句、groupby子句以及between、like关键字。

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

三、实验设备、环境

设备:

奔腾II或奔腾II以上计算机

环境:

WINDOWS98或WINDOWSNT、SQLSERVER2000中文版

四、实验步骤

1、分析题意,重点分析题目要求并给出解决方法;

2、创建以自己学号命名的文件夹;

3、根据题目要求启动SQLServer管理工具;

4、按题目要求完成实际操作任务,并将相关文档资料保存在以自己学号命名的文件夹中;

5、提交完成的实验结果。

五、实验内容

(一)使用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表);

(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)求已销售的书的信息;

(二)使用SQL查询分析器,对学生成绩管理(Student-Course)数据库完成如下查询:

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

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

3、统计每个学生每个学期的最低分、最高分及平均分。

(三)流程控制语句

1、Student表中若存在学号为“02020101”的学生,则显示已存在的信息,否则插入该学生的记录。

然后从Student表中删除学号为“02020101”的学生记录,重新执行该程序,观察与上次有何不同。

2、使用While语句求1到100之间的累加和,输出结果。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1