广工工业大学数据库试验指导及报告_第1页
广工工业大学数据库试验指导及报告_第2页
广工工业大学数据库试验指导及报告_第3页
广工工业大学数据库试验指导及报告_第4页
广工工业大学数据库试验指导及报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——广工工业大学数据库试验指导及报告

编号:2023版

《数据库原理及应用》

试验报告

试验时间:2023-2023春季试验班级:自动化电气09级班试验报告总份(片)数:份(片)试验教师:鲍芳

试验中心508试验室

广东工业大学

试验报告(范本,非设计性试验)

要求采用学校的试验报告书(16开)。如打印也应采用试验报告书的版头(A4纸),不接受电子版!每份试验报告必需包含以下5项:一、试验目的与要求

(按试验指导书“试验目的〞填写)

二、试验方案

(按试验指导书“试验步骤〞及本文档的试验内容要求填写)

三、试验结果和数据处理

(按试验操作结果记录填写)

四、结论

(可根据试验内容给出所对应数据库理论要点)

五、问题与探讨

(可回复思考题或试验中遇到的问题及解决方法)

若在报告中描述你在试验中遇到的问题及解决方案,将有机遇获得额外加分!

广东工业大学试验报告

____自动化______学院__11电气___专业__2__班成绩评定_______学号_3111001262_姓名_张锦淇_(合____号___教师签名_______

预习状况操作状况考勤状况数据处理状况试验一题目数据库系统设计第___周星期___第___节一、试验目的与要求

把握数据库的基本设计技术,熟悉数据库概念模型设计的每个任务步骤,并加深对关系数据库概念和特点的理解。

要求学生根据周边的实际状况自选一个小型的数据库应用项目并深入到应用项目的现实世界中进行系统分析和数据库设计,例如选择学生成绩管理系统、图书管理系统或仓库管理系统等。

学生成绩管理数据库的基本要求:

1.能够记录学生的基本信息,包括学号、姓名、性别、出生日期及所属学院;2.能够记录课程的基本信息,包括课程号,课程名,先行课号;3.能够记录学生选课状况及选修课程的成绩;

(学生成绩管理系统及图书管理系统数据库应用项目介绍可参见蔡延光《数据库原理及应用》第11章或苗雪兰《数据库原理及应用》第5章)。

二、试验方案

利用数据库设计的5个步骤(识别实体、确定关系、列出属性、确定键及属性的域),对学生成绩管理系统(必选)、图书管理系统(可选)进行相关数据库的数据建模及设计。

?使用ChenERD或鸭脚模型表示所设计的概念模型;?给出各表的关系结构和表级约束;

?给出各属性域的描述,包括物理描述和语义描述;

三、试验结果和数据处理

1.识别实体,确定关系:

学生(学号、姓名、性别、出生日期、学院)课程(课程号、课程名、现行课号)选课(学号、课程号、成绩)

说明:作为主键,学号必需存在学生表中、课程号必需存在课程表中。2.列出属性及属性的域1)学生表属性学号姓名性别出生日期学院类型Char(20)Char(20)Char(20)smalldatetimeVarchar约束主键NULL男或女NULLNOTNULL

2)课程表属性课程号课程名先行课号3)选课表学号课程号成绩Char(20)Char(20)int外键外键0—100类型Char(20)Char(20)Char(20)约束主键NOTNULLNULL3.鸭脚模型

课程

学生学号(PK)姓名性别出生日期学院选课学号(FK)

课程号(FK)

成绩

4.关系结构和表级约束

最大基数:学生与选课为M:N

课程与选课为1:N

最小基数:学生与选课为1-0关系

课程与选课为1-0关系

表级约束:1)性别只可以取‘‘男’’或‘‘女’’

2)选课成绩依靠于课程号和学生号

课程号(PK)课程名先行课程号四、结论

答:数据库不仅仅是保存数据,而且保存了数据之间的关系。多表之间存在约束条件,由业务的规则设定,多表保证了信息的完整性,每个表都有自己的主键,表中的外键要参照完整性约束。

五、问题与探讨

1.关系数据库中如何保存实体之间的关系?2.学生选课系统中属性学号、课程号及成绩采用哪种数据类型更好,数值型还是字符型?为什么?3.在所设计的数据模型中表达的业务规则是什么?

1.答:通过表和表中放置外键来保存关联表之间的联系。

2.答:学号,课程号采用数值型的数据更好,可以防止学生在输入学号的时候出错。

3.答:表达出来的业务规则是:首先要有学生号和课程号,才能在选课表中生成一个记录(参照完整性约束)。其次,一个学生可以选择多门课,也可以不选课;一门课可以被多个学生选择,也可以没有学生选择。

___自动化__学院___11电气___专业__2___班成绩评定_______学号_3111001262_姓名_张锦淇_(合____号____)教师签名_______

预习状况操作状况考勤状况数据处理状况试验四题目数据库的简单查询和连接查询试验第___周星期___第___节一、试验目的与要求

要求熟练把握和使用SQL、SQLServer企业管理器向数据库输入数据、修改数据和删除数据操作。

二、试验方案

1.2.3.4.5.6.7.

通过SQLServer查询分析器实现对学生成绩管理数据库的以下简单查询和连接查询:求数学系学生的学号和姓名;求选修了课程的学生学号;

求选修课程C1的学生学号和成绩,并要求对查询结果按成绩降序排列,假使成绩一致则按学号升序排列;

求选修课程C1且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出;求数学系或计算机系姓张的学生的信息;求缺少了成绩的学生的学号和课程号;查询每门课程的先行课程名;

三、试验结果和数据处理

1.求数学系学生的学号和姓名

select姓名,学号from学生where学院='数学系'

2.求选修了课程的学生学号

selectdistinct学号from选课where课程号isnotnull

3.求选修课程C1的学生学号和成绩,并要求对查询结果按成绩降序排列,假使成绩一致则按学

号升序排列

select学号,成绩from选课where课程号='001'orderby成绩desc,学号

4.求选修课程C1且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出

select学号,0.8*成绩from选课where(课程号='001')and(成绩between80and90)

5.求数学系或计算机系姓张的学生的信息

select*from学生where学院in('数学系','计算机系')

6.求缺少了成绩的学生的学号和课程号

select学号,课程号from选课where成绩isnull

7.查询每门课程的先行课程名

select课程名,先行课号from课程

四、结论

关系数据库方法的主要优点之一就是它能够十分灵活地检索数据。基本上能够以任何方式查看数据库中的数据。关键在于能够正确写出SQL语言。在关系数据库中有三个核心的检索操作:选择、投影和连接。

五、问题与探讨

1、如何提高数据查询和连接速度?对索引优化,建索引的选择必需结合SQL查询、修改、删除语句的需要,一般的说法是在WHERE里经常出现的字段建索引。假使在WHERE经常是几个字段一起出现而且是用AND连接的,那就应当建这几个字段一起的联合索引,而且次序也需要考虑,一般是最常出现的放前面。2、描述试验中遇到的问题及解决方法

在进行其次个试验任务时,假使不在学号前面加distinct,会出现,每选修一次课,学号会出现一次,若一个人选修了几门,他的学号会重复出现。加上distinct后,就能实现凡是选修了课学号就出现一次。

广东工业大学试验报告

__自动化__学院__11电气_专业__2___班成绩评定_______学号_3111001262_姓名_张锦淇_(合____号____)教师签名_______

预习状况操作状况考勤状况数据处理状况试验五题目数据库的嵌套查询试验第___周星期___第___节一、试验目的与要求

进一步把握SQLServer查询分析器的使用方法,加深SQL语言的嵌套查询语句的理解。

二、试验方案

通过SQLServer查询分析器实现对数据库的以下嵌套查询,并尝试用多种形式表示试验中的查询语句,并进行比较。

1、求选修了高等数学的学生学号和姓名;

2、求C1课程的成绩高于张三的C1课程成绩的学生学号和成绩;3、求选修C2课程的学生姓名;4、求没有选修C2课程的学生姓名;

5、求选修C1课程而没有选修C2课程的学生姓名;

三、试验结果和数据处理

1.求选修了高等数学的学生学号和姓名

select学号,姓名from学生where学号in(select学号from选课where课程号in

(select课程号from课程where课程名='高等数学'))

2.求C1课程的成绩高于张三的C1课程成绩的学生学号和成绩

select学号,成绩from选课where课程号='C1'and成绩>(select成绩from选课where课程号='C1'and学号in(select学号from学生where姓名='张三'))

3.求选修C2课程的学生姓名

select姓名from学生where学号in(select学号from选课where课程号='C2')

4.求没有选修C2课程的学生姓名

select姓名from学生where学号notin(select学号from选课where课程号='C2')

5.求选修C1课程而没有选修C2课程的学生姓名

select姓名from学生where学号in(select学号from选课where课程号='C1')and学号notin(select学号from选课where课程号='C2')

四、结论

对索引优化,建索引的选择必需结合SQL查询、修改、删除语句的需要,一般的说法是在WHERE里经常出现的字段建索引。假使在WHERE经常是几个字段一起出现而且是用AND连接的,那就应当建这几个字段一起的联合索引,而且次序也需要考虑,一般是最常出现的放前面。

五、问题与探讨

1、嵌套查询和连接查询有何区别?在本试验的查询任务中,哪些是可以由嵌套查询和连接查

询实现?

当查询同时涉及两个以上的表时,称为连接查询。连接查询包括等值连接查询、自然连接查询、非等值连接查询、自身连接查询、外连接查询和复合条件查询。

在SQL语言中,一个SELECT-FROM-WHERE语句称为一个查询块,将一个查询块嵌套在另外一个查询块的WHERE字句或HAVING短语的条件中的查询称为嵌套查询。连接查询:求选修了高等数学的学生学号和姓名,求选修C2课程的学生姓名。

嵌套查询:求C1课程的成绩高于张三的C1课程成绩的学生学号和成绩,求选修C1课程

而没有选修C2课程的学生姓名

2、描述试验中遇到的问题及解决方法

在写SQL语句使由于空格,半角标点等问题系统经常出错,经过排查后,知道以后写SQL时格式要注意的内容。

广东工业大学试验报告

__自动化___学院__11电气__专业_2_班成绩评定_______学号_3111001262_姓名_张锦淇_(合____号____)教师签名_______

预习状况操作状况考勤状况数据处理状况试验六数据库统计查询试验第___周星期___第___节一、试验目的与要求

熟悉把握SQLServer查询分析器的使用方法,加深对SQL语言查询语句的理解,熟悉把握数据查询中的分组和统计的操作方法。

二、试验方案

1.2.3.4.5.6.7.8.

通过SQLServer查询分析器实现以下对数据库的统计查询;用SQL语句实现学生人数的统计;

用SQL语句实现计算机系学生人数的统计;用SQL语句实现各系学生人数的统计;用SQL语句统计选修某课程学生的人数;用SQL语句统计选修了课程的学生的人数;用SQL语句统计被选课程及选修该课程的人数;用SQL语句统计每个学生全部课程的平均成绩;用SQL语句统计选修课超过3门课的学生学号;(可选)

三、试验结果和数据处理

1.用SQL语句实现学生人数的统计

selectcount(*)as学生人数from学生

2.用SQL语句实现计算机系学生人数的统计

selectcount(*)as计算机系人数from学生where学院='计算机系'

3.用SQL语句实现各系学生人数的统计

select学院,count(*)as学生人数from学生groupby学院

4.用SQL语句统计选修某课程学生的人数

selectcount(*)as微机原理课程人数from学生where学号in(select学号from选课where课程号in(select课程号from课程where课程名='微机原理'))

5.用SQL语句统计选修了课程的学生的人数

selectcount(*)as已选修课程人数from学生where学号in(select学号from选课where课程号isnotnull)

6.用SQL语句统计被选课程及选修该课程的人数

select课程号,count(学号)as学生人数from选课groupby课程号

7.用SQL语句统计每个学生全部课程的平均成绩

select学号,avg(成绩)as平均成绩from选课groupby学号

8.用SQL语句统计选修课超过3门课的学生学号

select学号from选课groupby学号havingcount(*)>3

四、结论

SQLServer包括好多内置的函数。它们中的一些被称为聚集函数,聚集函数在结果

列表中提供汇总值。分组查询使用GROUPBY字句。HAVING字句用于筛选分组的最终结果,只有满足HAVING字句指定条件的组才输出。

五、问题与探讨

1、试用GROUPBY(分组条件)字句后,语句中的统计函数的运行结果有什么不同?运行结果会根据GROUPBY字句中的条件进行一定顺序的排列。2、描述试验中遇到的问题及解决方法对groupby语句还不太了解如何使用,经过本试验,知道此语句是使结果依照指定的顺序排列。

广东工业大学试验报告

_自动化____学院__11电气_____专业_2__班成绩评定_______学号__张锦淇__姓名_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论