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

下载本文档

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

文档简介

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

广东工业大学试验报告

______________学院________________专业_____班成绩评定_______学号__________姓名__________(合____号____)教师签名_______

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

要求熟练把握和使用SQL、SQLServer企业管理器创立数据库、表、索引和修改表结构,并学会使用SQLServer查询分析器接受SQL语句和进行结果分析。

二、试验方案

1、在企业管理器中创立及开启数据库,在“新建数据库〞时指明数据文件及事务日志的位置;2、在SQLServer企业管理器中用SQL语句实现以下各表:

学生(学号,姓名,性别,出生日期,所属学院);课程(课程号,课程名,先行课号);选课(学号,课程号,成绩);

3、建立库、表和表间的联系,选择适合的数据类型,定义必要的列级约束(包括性别约束和成绩约束)和表级约束。创立数据库中的表后,在查询分析器的对象浏览器中可见该表及其所拥有的约束:学生:2课程:1选课:4

三、试验结果和数据处理查询结果:

四结论

理论要点:

1、同一个数据库中,不允许有重名的基本表,表的命名格式必需遵从标示符的命名规则;2、同一个基本表中不允许出现重复的列名,其命名格式必需遵从标示符的命名规则;3、需要为表中的每一个属性设置一个数据类型;

4、一个基本表中只能定义一个主码约束,被定义为主码的列的值不能为空;

五问题与探讨

1、举例说明创立外键的SQL语句中的参照表和被参照表各指什么?ONDELETECASCADE

关键字对删除记录有何影响?

答:例如,创立选课表的语句中CREATETABLESC

(SNOchar(5)foreignkey(SNO)referencesSTU(SNO),Cnochar(5)foreignkey(cno)referencesCLASS(cno),

scoredecimal(4,1)check(score>=0andscore26SELECTSNAMEFROMCLASS,STUDENT(STUDENT.SNO=CLASS.SNO)AND(LESSONNO='C2')SELECTSNAMEFROMCLASS,STUDENT(STUDENT.SNO=CLASS.SNO)AND(LESSONNO!='C2')SELECTSNAMEFROMWHERE

WHERE

CLASS,STUDENTWHERE(STUDENT.SNO=CLASS.SNO)ANDAND(LESSONNO!='C2')

查询结果1

(给出各SQL语句及对应查询结果)

2

3

4

(LESSONNO='C1')

5

四、结论

理论要点:1、嵌套查询一般的求解方法是由里向外,即先执行子查询,后执行父查询,子查

询结果用于建立父查询的查找条件。

2、当子查询结果返回值为单值时,可用比较运算符连接父查询和子查询3、当子查询为多值时,应用in来连接父查询和子查询。

五、问题与探讨

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

询实现?

答:嵌套查询和连接查询的区别在于:嵌套查询是用于查询一个表的,而多表查询是用于查询多个表或一个表的;在本试验中,由于可以使用嵌套查询的都可以用连接查询来实现,所以1~5的查询任务都可以由嵌套查询和连接查询来实现。

2、遇到的问题:进行任务4的时候,把选修了C12的学生也选了出来。

解决方法:把不等号改成notin

广东工业大学试验报告

______________学院________________专业_____班成绩评定_______学号__________姓名__________(合____号____)教师签名_______

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

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

二、试验方案

1.2.3.4.5.

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

用SQL语句实现计算机系学生人数的统计;用SQL语句实现各系学生人数的统计;用SQL语句统计选修某课程学生的人数;用SQL语句统计选修了课程的学生的人数;

6.用SQL语句统计被选课程及选修该课程的人数;7.用SQL语句统计每个学生全部课程的平均成绩;8.用SQL语句统计选修课超过3门课的学生学号;(可选)

三、试验结果和数据处理查询语句:

1

SELECTCOUNT(DISTINCTSNAME)FROMSTUDENT2

SELECTCOUNT(DISTINCTSNAME)FROMSTUDENTwhereSACADEMY='计算机'3

SELECTSACADEMY,COUNT(SNO)FROMSTUDENTGROUPBYSACADEMY4

SELECTSNO,COUNT(SNO)FROMCLASSWHERELESSONNO='C1'GROUPBYSNO5

SELECTSNO,COUNT(SNO)FROMCLASSWHERELESSONNOISNOTNULLGROUPBYSNO6

SELECTLESSONNO,COUNT(LESSONNO)FROMCLASSGROUPBYLESSONNO7

SELECTLESSONNO,AVG(DISTINCTPOINT)ASPINGJUNFENFROMCLASSGROUPBYLESSONNO

查询结果:

1

2

3

4

5

6

7

四、结论

理论要点:1、聚集函数一般与分组操作一起使用。对查询结果分组的目的是为了细化聚集函数

的作用对象,分组后聚集函数将作用每一个组,是每一个组都有一个函数值。

2、groupby子句是将查询结果按某一列或多列的值分组,值相等的为一组,一个分

组在的结果集中以一个元组的形式出现。

3、having子句用于筛选分组的最终输出结果,只有满足having子句指定的条件的

组才输出。

五、问题与探讨

1、试用GROUPBY(分组条件)字句后,语句中的统计函数的运行结果有什么不同?答:用了groupby子句后,列值相等都集中以一个元组的形式出现。2、遇到的问题:进行任务四时,如何进行进行多表的分组查询。解决的方法:连接查询。

广东工业大学试验报告

______________学院________________专业_____班成绩评定_______学号__________姓名__________(合____号____)教师签名_______

预习状况操作状况考勤状况数据处理状况试验七题目数据库的视图和图标的定义及使用试验第___周星期__第_节一、试验目的与要求

把握SQLServer中视图的创立和使用,加深对视图和SQLServer图表作用的理解。

二、试验方案

通过SQLServer实现数据库的视图的创立及使用,完成以下任务:1、建立计算机系学生的视图;

2、由学生、课程和选课三个表,定义一个计算机系的学生成绩视图,其属性包括学号、姓名、课程名和成绩;

3、将学生的学号、总成绩、平均成绩定义成一个视图;

4、统计学生的学号、姓名、总成绩及平均成绩(可利用3的视图或groupby学生.学号,学生.姓名);

三、试验结果和数据处理

1createviewsub_aasselectSno,Sname,Sex,Sbirthday,SdeptfromSTUwhereSdept='计算机系'

2createviewsub_basselectSTU.Sno,Sname,Cname,scorefromSTU,CLASS,SCwhere(STU.Sno=SC.SnoandSC.Cno=CLASS.Cno)andSTU.Sdept='计算机系'

3createviewsub_casselectSno,avg(score)asavgscore,sum(score)assumscorefromSCgroupbySno

4selectSTU.Sno,Sname,avgscore,sumscorefromSTU,sub_cwhere

STU.Sno=sub_c.Sno

查询结果

1.

2.

3.

4.

四、结论

理论要点:1、组成视图的列名要么全部满足,要么全部指定。

2、多表连接导出的视图中有几个同名列作为视图的属性列名时,必需指定所有列

名。

3、视图是虚表,可以进行查询、删除、更新等操作。

五、问题与探讨

1、为什么要建立视图?视图和基本表有什么不同?

答:

温馨提示

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

评论

0/150

提交评论