实验4.docx

上传人:b****6 文档编号:7517575 上传时间:2023-01-24 格式:DOCX 页数:12 大小:915.03KB
下载 相关 举报
实验4.docx_第1页
第1页 / 共12页
实验4.docx_第2页
第2页 / 共12页
实验4.docx_第3页
第3页 / 共12页
实验4.docx_第4页
第4页 / 共12页
实验4.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

实验4.docx

《实验4.docx》由会员分享,可在线阅读,更多相关《实验4.docx(12页珍藏版)》请在冰豆网上搜索。

实验4.docx

实验4

 

《数据库及其应用》

(课程编号:

B0901000)

实验报告

(2013-2014学年第2学期)

实验成绩:

 

学号:

1310080147

姓名:

龙佳希

专业班级:

税收1302

课堂号:

10

任课教师:

朱少林

完成日期:

2014.5.22

 

一、实验目的及要求

1.1能熟练掌握Access2010的启动、退出,以及操作界面和操作方法。

1.2能够理解关系模型的基本概念。

1.3能够完成简单的数据库概念设计、逻辑设计和物理设计。

1.4能够熟练建立数据库文件、表对象和关系。

1.5能够熟练掌握基本SQL语言,能够在Access中进行一般的SQL查询。

1.6能够运用SQL对数据库进行更新。

1.7能够熟练掌握不同软件之间的数据交换。

二、实验设备(环境)及要求

PC机,Windows7,Office2010(主要是Access2010)

实验参考教材:

《数据库及其应用(Access及Excel)学习与实验实训教程》(第二版)。

(以下简称《实验教程》)

三、实验内容及记录

实验项目4:

使用SQL命令进行查询和操作

1.练习SQL查询的SELECT语句

按照《实验教程》实验6,练习SQL-SELECT查询,查看查询结果。

先在SQL视图中输入命令,再点击运行即可。

(1)在“SQL视图”中输入查询“学院”“专业”“学生”完整数据

SELECT*

FROM((学院INNERJOIN专业ON学院.学院编号=专业.学院编号)

INNERJOIN学生ON专业.专业编号=学生.专业编号);

(2)查询“工商管理”专业所有女生信息

SELECT专业名称,学生.*

FROM专业INNERJOIN学生ON专业.专业编号=学生.专业编号

WHERE专业.专业名称="工商管理"AND学生.性别="女";

(3)查询作为“项目负责人”的学生的学号、姓名、性别。

保存为“负责人”查询。

SELECT学生.学号,姓名,性别

FROM学生INNERJOIN项目分工ON学生.学号=项目分工.学号

WHERE分工="负责人";

单击“保存”按钮,弹出“另存为”对话框,输入“负责人”,单击“确定”按钮。

(4)查询没有参与项目的学生学号、姓名、专业名称

SELECT学号,姓名,专业名称

FROM学生INNERJOIN专业ON学生.专业编号=专业.专业编号

WHERE学号NOTIN(SELECT学号FROM项目分工);

(5)查询参与项目超过一项的学生学号、姓名和参与项目数。

SELECT学生.学号,姓名,COUNT(*)

FROM学生INNERJOIN项目分工ON学生.学号=项目分工.学号

GROUPBY学生.学号,姓名

HAVINGCOUNT(*)>1;

(6)查询参与项目最多的学生学号、姓名和参与项目数

SELECTTOP1学生.学号,姓名,COUNT(*)AS参与项目数

FROM学生INNERJOIN项目分工ON学生.学号=项目分工.学号

GROUPBY学生.学号,姓名

ORDERBYCOUNT(*)DESC;

(7)查询与农村或农业有关的项目及负责人姓名。

SELECT项目.*,姓名

FROM(学生INNERJOIN项目分工ON学生.学号=项目分工.学号)

INNERJOIN项目ON项目.项目编号=项目分工.项目编号

WHERE分工="负责人"AND(项目名称LIKE"*农业*"OR项目名称LIKE"*农村*")

2.练习SQL的创建表、插入、更新、删除操作语句

按照《实验教程》实验6,练习SQL的相关命令,查看结果。

(1)在教师表中添加一个新教工信息

INSERTINTO教师

VALUES("Z09031","杨飞","男","讲师","09");

(2)将“校级”项目的经费增加1000元

UPDATE项目SET项目.经费=经费+1000

WHERE(((项目.[项目类别])="校级"));-

(3)创建“已结项项目”表,包括:

项目编号、项目名称、项目类别、指导教师工号、负责人学号

CREATETABLE已结项项目

(项目编号TEXT(10)PRIMARYKEY,

项目名称TEXT(60)NOTNULL,

指导教师工号TEXT(8)REFERENCES教师(工号),

负责人学号TEXT(8)REFERENCES学生(学号));

(4)将已结项的项目转入“已结项项目”表,然后删除“已结项”的项目数据。

INSERTINTO已结项项目(项目编号,项目名称,指导教师工号,负责人学号)

SELECT项目.项目编号,项目名称,指导教师工号,学号

FROM项目INNERJOIN项目分工ON项目.项目编号=项目分工.项目编号

WHERE分工="负责人"AND是否结项;

DELETEFROM项目

WHERE是否结项;

3.写出实现以下功能的SQL语句

①查询“专业”表,显示开设的所有专业涉及的专业类别。

SELECT专业.专业类别

FROM专业;

②查询各专业学生的人数。

SELECT学生.专业编号,COUNT(*)AS人数

FROM学生

GROUPBY学生.专业编号;

③统计没有参与项目的学生人数。

SELECTCOUNT(*)AS人数

FROM学生

WHERE学号NOTIN(SELECT学号FROM项目分工);

#.回答问题

(1)不命名保存查询,与将查询保存为查询对象有何区别?

查询对象有什么作用?

前者查询设计没有保存,再次使用时需要重新输入命令,后者当选中相应的查询对象并打开时,可直接运行查询查看结果。

作用:

①当需要查看查询结果时,直接在查询对象界面选中相应的查询对象并打开,就可以运行查询查看结果,避免了再次重新设计查询的操作。

并且查询对性总是获取数据源表中最新的数据。

查询能自动与源表保持同步。

②查询对象可以成为其他操作的数据源。

(2)上述实验中,插入“已结项项目”表的命令是否可以省略字段列表?

为什么?

给表中全部字段提供数据时字段列表可以省略,系统会根据提供数据的顺序按照表中字段的顺序输入数据。

(3)删除“已结项项目”的命令的条件为什么没有比较对象?

项目表中的“是否结项”字段,是个逻辑值字段,也就是只有true和false两种情况。

"WHERE是否结项"就等价于"WHERE是否结项=1"或者"WHERE是否结项=true"这种情况。

属于省略的写法。

 

四、分析讨论

有几点收获:

AND和后面的字符之间要有一个空格,否则就会出现图中所示的情况

SELECT语句中的逗号要在英文输入法开启的时候打,否则就会出现图示情况

查询里面内容很丰富,也很有趣,所以我还比较喜欢做这个实验啦。

需要注意的问题有很多,比如说我经常就把符号搞成中文状态下的,结果都运行不了,后来意识到这个问题了,所以就特别注意。

这次实验我对查询的一些操作熟练了些。

五、教师评阅

1.按时完成实验:

是:

□否:

2.实验内容和过程记录完整:

完整:

□基本完整:

□不完整:

3.回答问题完整、正确:

是:

□一般:

□差:

4.有实验的心得或讨论:

是:

□否:

5.实验报告的撰写认真、格式符合要求,没有抄袭行为。

是:

□一般:

□差:

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

当前位置:首页 > 求职职场 > 简历

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

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