数据库实验报告广东工业大学.docx

上传人:b****6 文档编号:7745836 上传时间:2023-01-26 格式:DOCX 页数:22 大小:311.89KB
下载 相关 举报
数据库实验报告广东工业大学.docx_第1页
第1页 / 共22页
数据库实验报告广东工业大学.docx_第2页
第2页 / 共22页
数据库实验报告广东工业大学.docx_第3页
第3页 / 共22页
数据库实验报告广东工业大学.docx_第4页
第4页 / 共22页
数据库实验报告广东工业大学.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

数据库实验报告广东工业大学.docx

《数据库实验报告广东工业大学.docx》由会员分享,可在线阅读,更多相关《数据库实验报告广东工业大学.docx(22页珍藏版)》请在冰豆网上搜索。

数据库实验报告广东工业大学.docx

数据库实验报告广东工业大学

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名李智熙(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验二题目数据库的定义实验第___周星期___第___节

一、实验目的与要求

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

二、实验方案

1、在企业管理器中创建及打开数据库,在“新建数据库”时指明数据文件及事务日志的位置;

2、在SQLServer企业管理器中用SQL语句实现以下各表:

学生(学号,姓名,性别,出生日期,所属学院);

课程(课程号,课程名,先行课号),选课(学号,课程号,成绩);

3、建立库、表和表间的联系,选择合适的数据类型,定义必要的列级约束(包括性别约束和成绩约束)和表级约束。

创建数据库中的表后,在查询分析器的对象浏览器中可见该表及其所拥有的约束:

学生:

2课程:

1选课:

4

三、实验结果和数据处理

创建学生表:

CREATETABLE选课

(学号CHAR(20)PRIMARYKEY,

姓名CHAR(20),

性别CHAR

(2)CHECK(性别IN(’男’,’女’)),

出生日期DATETIME,

所属学院CHAR(20))

创建课程表:

CREATETABLE课程

(课程号CHAR(10)PRIMARYKEY,

课程名CHAR(20),

先行课号CHAR(10))

创建选课表:

CREATETABLE选课

(学号CHAR(20)FOREIGNKEY,

课程号CHAR(10)FOREIGNKEY,

成绩DECIMAL(4,1)CHECK(成绩>=0AND成绩<=100)

CONSTRAINTC1PRIMARYKEY(学号,课程号))

学生Table

课程Table

选课Table

四、结论

SQL的数据库定义功能包括定义数据库、基本表、视图和索引,SQL一般不提供修改视图定义及修改索引定义的操作。

在定义基本表的同时,还可以定义与该表相关的完整性约束条件,这些完整性约束条件被存入系统的数据字典中。

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验三题目数据库的建立和维护实验第___周星期___第___节

一、实验目的与要求

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

二、实验方案

通过SQLServer企业管理器实现对学生成绩管理数据库的数据增加、数据删除和数据修改操作。

要求每个表的记录在10行以上,可根据查询要求增加或完善表中记录;输入数据检验各数据约束的限制;数据更改和数据删除时检验外码约束;

三、实验结果和数据处理

学生_Table插入数据指令:

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('001','小林','男','2011-5-1','自动化')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('002','小勇','男','2011-5-2','自动化')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('003','小兴','男','2011-5-3','自动化')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('005','小白','女','2011-5-4','环境')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('006','小坚','女','2011-5-5','工程管理')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('007','张小爱','女','2011-5-6','计算机')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('008','小敏','男','2011-5-7','交通')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('009','张三','男','2011-5-8','数学')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('0010','张小猫','女','2011-5-9','数学')

INSERTINTO学生(学号,姓名,性别,出生日期,所属学院)VALUES

('028','小熙','男','2011-5-28','自动化')

课程_Table插入数据指令:

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('201','高等数学','301')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('202','数电','302')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('203','模电','303')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('205','环保','305')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('206','物流管理','306')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('207','城市规划','307')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('208','车辆管理','308')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('209','与人类共存','309')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('210','捕鼠技巧','310')

INSERTINTO课程(课程号,课程名,先行课号)VALUES

('228','市场营销','328')

 

选课_Table插入数据指令:

INSERTINTO选课(学号,课程号,成绩)VALUES

('001','201','90')

INSERTINTO选课(学号,课程号,成绩)VALUES

('002','202','90')

INSERTINTO选课(学号,课程号,成绩)VALUES

('003','203','85')

INSERTINTO选课(学号,课程号,成绩)VALUES

('005','205','80)

INSERTINTO选课(学号,课程号,成绩)VALUES

('006','206','75')

INSERTINTO选课(学号,课程号,成绩)VALUES

('007','207','70')

INSERTINTO选课(学号,课程号,成绩)VALUES

('008','208','65')

INSERTINTO选课(学号,课程号,成绩)VALUES

('009','209','60')

INSERTINTO选课(学号,课程号,成绩)VALUES

('010','210','85')

INSERTINTO选课(学号,课程号,成绩)VALUES

('028','228','85')

四、结论

在输入数据时,数据必须按照前面所指定的数据类型进行输入,超出数据类型输入无效。

我们不仅可以通过用插入数据指令实现对表格数据的输入,还可以通过使用查询分析器来达到显示和修改数据的目的。

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名李智熙(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验四题目数据库的简单查询和连接查询实验第___周星期___第___节

一、实验目的与要求

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

二、实验方案

通过SQLServer查询分析器实现对学生成绩管理数据库的以下简单查询和连接查询:

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

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

3.求选修课程C1的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列;

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

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

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

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

三、实验结果和数据处理

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

select学号,姓名,所属学院

from学生

where所属学院='数学系'

查询结果:

学号

姓名

009

张三

010

张小猫

 

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

3.求选修课程C1的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列;

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

 

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

select*

from学生

where姓名like'张%'

and(所属学院='计算机'or所属学院='数学系')

查询结果:

学号

姓名

性别

出生日期

学院

007

张小爱

2011-5-6

计算机

009

张三

2011-5-8

数学

010

张小猫

2011-5-9

数学

0002张红女1990-06-0500:

00:

00.000计算机

0003张四男1990-08-2500:

00:

00.000计算机

 

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

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

四、结论

关系数据库方法的主要优点之一就是它能够十分灵活地检索数据。

基本上,您能够以任何您需要的方式查看数据库中的数据。

其关键在于懂的如何写出检索正确的行和列所要求的代码。

在关系数据库中有三个核心的检索操作:

选择(selection)、投影(projection)和连接(join)。

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名李智熙(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验五题目数据库的嵌套查询实验第___周星期___第___节

一、实验目的与要求

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

二、实验方案

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

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

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

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

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

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

三、实验结果和数据处理

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

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

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学号notin(select学号

from选课

where课程号='C2')and学号in(select学号

from选课

where课程号='C1')

查询结果:

姓名

小林

张小爱

小敏

张三

四、结论

关系数据库方法的主要优点之一就是它能够十分灵活地检索数据。

基本上,您能够以任何您需要的方式查看数据库中的数据。

其关键在于懂的如何写出检索正确的行和列所要求的代码。

在关系数据库中有三个核心的检索操作:

选择(selection)、投影(projection)和连接(join)。

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名李智熙(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验六数据库统计查询实验第___周星期___第___节

一、实验目的与要求

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

二、实验方案

通过SQLServer查询分析器实现以下对数据库的统计查询;

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

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

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

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

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

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

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

三、实验结果和数据处理

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

selectcount(*)

from学生

查询结果:

 

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

selectcount(*)

from学生

where所属学院='计算机'

查询结果:

 

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

select所属学院,count(*)学生人数

from学生

groupby所属学院

查询结果:

所属学院

学生人数

自动化

4

环境

1

工商管理

1

计算机

1

交通

1

数学

2

 

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

select课程号,count(*)选修人数

from选课

where课程号='C1'

groupby课程号

查询结果:

 

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

selectcount(distinct学号)学修课程人数

from选课

查询结果:

 

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

select课程号,count(学号)选课人数

from选课

groupby课程号

查询结果:

课程号

选课人数

001

4

002

1

003

1

005

1

006

1

008

1

010

1

228

1

 

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

select学号,avg(成绩)平均成绩

from选课

groupby学号

查询结果:

学号

平均成绩

001

90

002

90

003

85

005

80

006

75

007

70

008

65

009

60

010

85

028

85

四、结论

SQLServer包括很多内置的函数。

它们中的一些被称为聚集函数,因为他们设计的行的分组而不是单个行。

聚集函数在结果列表中提供汇总值。

SQLServer提供了使用子聚集函数的技巧,它可以通过使用GroupBy字句来计算小计。

换句话来说,你的结果可以显示出按照行进行分组后的函数结果。

广东工业大学实验报告

自动化学院专业班成绩评定_______

学号姓名李智熙(合作者____号____)教师签名_______

预习情况

操作情况

考勤情况

数据处理情况

实验七题目数据库的视图和图标的定义及使用实验第___周星期__第_节

一、实验目的与要求

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

二、实验方案

通过SQLServer实现数据库的视图的创建及使用,完成以下任务:

1、建立计算机系学生的视图;

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

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

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

三、实验结果和数据处理

1、建立计算机系学生的视图;

语句:

createview计算机系学生

asselect学号,姓名,出生日期

from学生

where所属学院='计算机'

 

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

语句:

createview计算机系学生成绩(学号,姓名,课程名,成绩)

asselect学生.学号,学生.姓名,课程.课程名,选课.成绩

from学生,课程,选课

where学生.学号=选课.学号and课程.课程号=选课.课程号

and学生.所属学院='计算机'

 

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

语句:

createview学生成绩统计

asselect学号,sum(成绩)总成绩,avg(成绩)平均成绩

from选课

groupby学号

 

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

语句:

select学生.学号,姓名,总成绩,平均成绩

from学生成绩统计,学生

where学生成绩统计.学号=学生.学号

查询结果:

学号

姓名

总成绩

平均成绩

001

小林

90

90

002

小勇

90

90

003

小兴

85

85

005

小白

80

80

006

小坚

75

75

007

张小爱

70

70

008

小敏

65

65

009

张三

60

60

010

张小猫

85

85

028

小熙

85

85

四、结论

视图是关系数据库系统提供给用户以多角度观察数据库中数据库的一种重要方法。

从前面的介绍已经知道,视图就是从一个或几个基本表到处的虚表。

视图在概念上与基本表等同,视图一经定义,则可以和基本表一样进行查询、删除、更新等操作,而且用户可以再视图上在定义视图。

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

当前位置:首页 > 外语学习 > 法语学习

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

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