1、数据库及其应用(课程编号:B0901000)实验报告(2013-2014 学年第 2 学期)实验成绩:见成绩表 学 号: 1312040217 姓 名: 郑晓培 专业班级: 新闻 1302 课 堂 号: 11 任课教师: 朱平 完成日期: 6 月 4 日 一、实验目的及要求1.1 能熟练掌握 Access2010 的启动、退出,以及操作界面和操作方法。1.2 能够理解关系模型的基本概念。1.3 能够完成简单的数据库概念设计、逻辑设计和物理设计。1.4 能够熟练建立数据库文件、表对象和关系。1.5 能够熟练掌握基本 SQL 语言,能够在 Access 中进行一般的 SQL 查询。1.6 能够运用
2、 SQL 对数据库进行更新。1.7 能够熟练掌握不同软件之间的数据交换。二、实验设备(环境)及要求PC 机,Windows 7,Office 2010(主要是 Access 2010)实验参考教材:数据库及其应用(Access 及 Excel)学习与实验实训教程 (第二版) 。(以下简称实验教程 )三、实验内容及记录实验项目 1:熟悉 Access 的启动和退出,熟悉 Access 的界面1启动 Access练习不同的 Access 的启动方法。2退出 Access练习不同的 Access 的启动方法。3观察并了解 Access 用户界面不同方式启动进入 Access,其界面有所差异。通过“开
3、始”按钮或桌面 Access 快捷方式启动进入 Backstage 视图;通过 Access 数据库文件关联则直接进入 Access 数据库窗口。Access 用户界面主要由三个组件组成: 功能区。 Backstage 视图。 导航窗格。(1)观察 Backstage 视图:不同方式进入 Backstage 视图,注意其差别。(2)观察功能区:了解组成功能区的选项卡。(3)观察导航窗格。各种对象的显示组合。4Access 选项及其设置在 Backstage 视图中选择 “选项 ”命令单击,进入 Access 选项对话框窗口。在该窗口可设置默认文件夹等。可设置文档窗口显示方式、定制导航窗格、定制
4、工具栏的项目等。#回答问题(1)启动 Access 一般有几种方法?答:一般有三种方法。1.双击桌面上的 Access 图标。2.点击“开始”从程序中找到 Microsoft Office,再点击 Access。3.打开计算机,在里面寻找到要使用的 Access 双击。(2)按键退出 Access,对应的键是什么?答:ALT+F4 组合键(3)几种方式进入 Backstage 视图?答:两种方法1.通过“开始”按钮2.通过桌面 Access 快捷方式(4)最初功能区有哪几个选项卡? 答:文件 开始 创建 外部数据 数据库工具(5)如何隐藏导航窗格? 答:(1)在 Backstage 视图中选择
5、 “选项”命令单击,进入 Access 选项对话框窗口(2)选择“当前数据库”页,把“导航”下“显示导航窗格”前小方格里对号去除(3)单击“确定”即可(6)更改 Access 默认文件夹怎样操作? 答:(1)在 Backstage 视图中选择 “选项”命令单击,进入 Access 选项对话框窗口,(2)选择“常规”页,在“创建数据库”下的“默认数据库文件”进行更改(3)最后单击“确定”即可。(7)怎样在“快速访问工具栏”中添加“复制”按钮图标?答:(1)在 Backstage 视图中选择 “选项”命令单击,进入 Access 选项对话框窗口,(2)选择“快速访问工具栏” ,在左侧方框中选择“复
6、制” ,然后单击“添加”键,(3)最后单击“确定”即可。实验项目 2:进行数据库设计,完成表的创建、关系定义及完整性设置,输入数据及操作数据1学习数据库设计的方法按照实验教程中实验 2、实验 3 的内容,认真分析、了解数据库设计中概念设计、逻辑设计、物理设计的意义及基本方法。2创建数据库文件按照实验教程中实验 3 的内容,创建文件夹、数据库文件。3使用表设计视图,完成所有表的创建写出创建表的基本步骤,并附上截图(详细写出 1 个表的设计过程即可)答:(1)进入 Access 窗口,单击功能区的“创建”标签,选择“创建”选项卡(2)单击“表设计” ,启动表设计视图(3)在设计视图中按照表的设计定
7、义的各字段的名称、数据类型、并设置字段属性等(4)定义主键、索引等,设计表的属性(5)最后对表命名保存4定义表之间的关系当所有表都定义好后,通过建立关系实现表之间的引用完整性。写出完整的操作步骤(重复操作可省略) ,并附上截图。答:(1)选择数据库工具选项卡,单击关系按钮,弹出显示表对话框(2)双击要添加的表,选择完后关闭对话框。(3)从父表中选中被引用的字段拖动到子表对应的外键字段上,弹出编辑关系对话框。(4)点击实施参照完整性,单击创建。5有效性规则与有效性文本根据表的物理设计,在创建表时,定义有效性规则属性和有效性文本。6设置格式属性与输入掩码属性按照实验教程实验 4,设置有关格式、输入
8、掩码属性。答:设置字段格式(1)要使项目表中的立项日期字段以红色、中文日期格式显示,在项目表设计视图中选中“立项日期”字段,然后设置格式字段属性值为 yyyy年 m月 d日 红色(2)要使项目表中经费字段的显示为“¥开头、千位逗号分隔、2 位小数、蓝色” ,在设计视图中,选中“经费”字段,设置“格式”字段属性值为¥ # ,# # # . 00 蓝色字段输入掩码设置如在教师表中,由于工号是 6 为文本,第一位是字母,后五位由 0-9 数字组成,因此可以规定每一位的输入字符集。在“教师”表设计视图中选中“工”字段,定义“输入掩码”字段属性值为 L000007设置查阅选项按照实验教程实验 4,设置查
9、阅选项。写出实验步骤,并附截图。答:进入“项目”表设计视图,选中“项目类别”字段,单击“查阅”选项卡,在“显示控件”栏中选择“列表框” ,在“行来源类型”栏中选择“值列表” ,在“行来源”栏中输入“国家级重点;国家级一般;校级” 。8数据表视图下数据记录的显示与操作根据实验教程附录的数据,练习记录的添加、修改、删除数据操作。练习数据表视图中的各种操作。#回答问题(1) 什么是实体码?它在转换为关系模型后成为关系的什么?答:(1)实体码:实体集中的每个实体都可相互区分,即每个实体的取值不完全相同。用来唯一确定或区分实体集中每一个实体的属性或属性组合即称为实体码。(2)转换为关系模型后成为关系的候
10、选键或者主键。(2)在本实验中,如果允许一名教师指导多个项目,ER 图和关系有何变化?答:ER 图中, 教师与项目变成 1:n 的关系;在关系模型中,教师与项目之间也不再是1:1 关系。(3)1:1 联系、1:n 联系、m :n 联系转换为关系时是如何处理的?答:(1)1:1 的联系,一般不必单独成为一个关系模式,可以将它与联系中的任何一方实体转化成的关系模式合并。(2)1:n 的联系也没有必要单独作为一个关系模式,可将其与联系中的 n 方实体转化成的关系模式合并。(3)m:n 的联系必须单独成为一个关系模式,不能与任何一方实体合并。(4)数据库表结构设计,属于数据库设计中的什么步骤? 答:属
11、于数据库的物理设计,设计所有表的物理结构以及表之间的相互关系。按照结构化设计方法,物理设计是在逻辑设计的基础上结合 DBMS 的规定,设计可上机操作的表结构。(5)Access 存储数据时,用到几个数据库文件?扩展名是什么?答:用到一个数据库文件,其扩展名为.mdb(6)在表结构设计中,应该包含哪些内容?答:应包括字段名、数据类型、字段属性(包括字段大小、有效性规则、索引、主键)(7)在本实验设计中,共使用了哪些数据类型?不同类型对宽度如何规定?答:(1)文本型,备注型,日期时间型,OLE 型,是否型,数字型,货币型(2)文本型最多 255 个字符,由用户自己定义。备注型字段最多可存储 655
12、35 个字符。数字型又进一步分为字节、整型、长整型等,不同子类型的取值范围和精度有区别。日期时间型可以同时表达日期和时间也可以单独表示日期或时间 其最多可存储8 个字符。是否型存储空间为 1 bit。货币型的最大存储空间为 8 个字符。(8)定义表之间的关系时, “实施参照完整性”的意义是什么?在“编辑关系”对话框中选中或者撤销“级联更新相关字段”复选框,对于数据表的操作有何影响?答:(1)在子表中添加或更新的数据,Access 将检验新加入外键值是否满足参照完整性。如果外键值没有与之对应的主键值,Access 将自动级联更新。(2)当父表修改主键值时,如果子表的外键有对应值,则 Access
13、 将拒绝修改主键值。(9)建立表的关系,是否要求发生关系的两个字段必须同名?答:不是,不用必须同名。(10)如何输入学生的照片?答:(1)利用“剪切”或“复制”将对象放置在“剪切板”中,。(2)在输入记录的“OLE 对象 ”型字段上右击,在弹出的快捷菜单中选择“粘贴”命令即可。(11)定义表时,设置“有效性文本”字段属性有何作用?答:用户针对该字段的每一个输入值或修改值都会带入检验,只有符合有效性文本规则的值才能够存入字段,如果不符合,界面将会出现一个提示框提示输入错误,并要求重新输入。(12)可以采用查阅方法输入的字段类型有哪些?绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的
14、值,是否可以输入?如果一定要使输入的值限定在列表框的值的范围内,应该如何实现?答:(1) “查阅”选项卡中设置的“显示控件”属性仅适用于“文本” “是否”和“数字”型字段;(2)不可以输入;(3)在“有效性规则”中加入相应限制即可。(13)若为“专业”表的“学院编号”字段设计“查阅”控件。数据从“学院”表中来,显示“学院编号”和“学院名称”两列数据,采用列表框。写出设计过程。答:(1)点击进入“专业”表设计视图,选中“学院编号”字段,单击“查阅”选项卡;(2)在“显示控件”栏中选择“列表框” ,在“行来源类型”栏中选择“值列表” ,在“行来源”栏中输入“学院编号”和“学院名称” ;(3)单击工
15、具栏中的“保存”按钮,便可使用查阅列表用于输入。(14)在数据表浏览展开子表时,可以最多展开多少层子表?若要同时展开每条记录的的子表,应该如何操作?答:(1)8 层;(2)单击“格式”菜单下“子数据表”菜单项中的“全部展开”项即可。实验项目 3:SQL 视图中表达式练习1进入 SQL 视图及在不同视图间切换按照实验教程实验 5 操作,熟悉不同视图切换。2不同类型数据的表达式运算在 SQL 视图中分别输入以下命令,分别进入数据表视图查看结果。写出各命令结果。对于参数自己输入数据。SELECT -5.122+(17 mod 3);答:输入 3 得到 26.2144SELECT “Hello “+“
16、,World!“,LEFT(“清华大学出版社“,2)+RIGHT(“清华大学出版社“,3);答:Hello,world!清华出版社SELECT “你毕业的年份是“, VAL(LEFT(你的学号,2)+4;答:输入 1312040248 得到 17SELECT “现在是“+STR(YEAR(DATE()+“年“,“现在的时间是:“+CSTR(TIME();答:SELECT “张三“李四“,“ABCD“1000;答:输出结果为-1 0 -1#回答问题(1)有哪几种方式可进入“SQL 视图”?如果用“记事本”编写了 SQL 语句,是否可以在 SQL 视图中使用?如何操作? 答:(1)在 Access
17、 中打开“项目管理”数据库,单击“创建”选项卡”查询”组“查询设计”按钮,弹出查询查询窗口及显示表对话框。关闭“显示表”对话框,单击“设计”选项卡“结果”组“SQL 视图 ”按钮,进入 SQL 视图。(2)进入 Access 界面,单击开始,再单击视图,再单击 SQL 视图即可。(3)可以。打开数据库的企业管理器,打开正在使用的数据库, 然后找到视图,点击右键,新建视图,在中间空白处将写在记事本上的 SQL 语句复制到该处,之后再保存。(2)为什么不能在数字常量前加“¥”或“$”符号表示币值常量?“¥”或“$”有何作用?答:(1)数字常量是 int 或者 float double 类型的数字类
18、型的,如果想用可以用字符型数据代替数字型。货币型的显示数字前有“¥” 。(2) “¥”的用途是表示货币型的前缀。 “$”的用途是可以在格式属性中的任何位置使用这些字符,并且将这些字符原文照印。实验项目 4:使用 SQL 命令进行查询和操作1练习 SQL 查询的 SELECT 语句按照实验教程实验 6,练习 SQL-SELECT 查询,查看查询结果。2练习 SQL 的创建表、插入、更新、删除操作语句按照实验教程实验 6,练习 SQL 的相关命令,查看结果。3写出实现以下功能的 SQL 语句 查询“专业”表,显示开设的所有专业涉及的专业类别。答:SELECT 专业.专业名称,专业.专业类别from
19、 专业; 查询各专业学生的人数。答:SELECT 学生.专业编号, 专业.专业名称, count (学生 .学号) AS 人数FROM 专业 INNER JOIN 学生 ON 专业.专业编号 = 学生.专业编号GROUP BY 学生.专业编号, 专业.专业名称; 统计没有参与项目的学生人数。答:SELECT 学生.学号, 学生.姓名, 学生.学号FROM 学生WHERE (Not (学生.学号)=“in(select 学号 from 项目分工)“);#回答问题(1)不命名保存查询,与将查询保存为查询对象有何区别?查询对象有什么作用? 答:(1)在查询“设计试图”时,若是首次创建的查询,单击工具
20、栏上的“保存”按钮;或者选择“文件”菜单上的“另存为”菜单项,用户可保存设置的查询。(2)保存为查询对象后可以随时在数据库窗口中的查询对象界面中选中双击,或者单击选中,然后右击“打开”按钮,运行查询并立即查看结果。(3)作为查询对象,还可以作为其他数据库操作与表类似的数据源。(2)上述实验中,插入“已结项项目”表的命令是否可以省略字段列表?为什么?答:不能;因为基于多数据源的连接查询中,对于多个表中的重名字段,在使用时必须加表名前缀区分,而不重名的字段无须加表名前缀。(3)删除“已结项项目”的命令的条件为什么没有比较对象?答:SQL 删除命令的功能是删除满足条件的记录。在此处删除“已结项项目”
21、中有记录的“项目” ,不属于“联级删除” ,所以没有比较对象。实验项目 5:使用交互方式进行查询和操作1进入查询设计视图进行交互式选择查询设置按照实验教程实验 7,练习可视交互方式的选择查询。查看对应的 SQL 命令。2进行交叉表查询按照实验教程实验 7,练习可视交互方式的交叉表查询。查看对应的 SQL 命令。3生成表查询操作按照实验教程实验 8,练习可视交互方式的生成表查询。查看对应的 SQL 命令。4删除、更新查询操作按照实验教程实验 8,练习可视交互方式的删除、更新查询。查看对应的 SQL 命令。#回答问题(1)将本实验切换到 SQL 视图, 答:点击左上角“SQL 视图 “即可。如实验
22、一:SELECT DISTINCT 专业.专业类别, 专业.专业编号, 专业.专业名称, Count(学生.学号) AS 人数FROM 专业 INNER JOIN 学生 ON 专业.专业编号 = 学生.专业编号GROUP BY 专业.专业类别, 专业.专业编号, 专业.专业名称;(2)深入体会交叉表查询的作用,简述交叉表查询的实质意义。为什么本实验的交叉表只添加了两个表?答:(1)交叉表查询是 Access 支持的一种特殊的汇总查询,是关系数据库中关于多对多数据设计的最常见的表。(2)在定义查询时,可以指定源表的一个或多个字段作为交叉表的行标题的数据来源,指定一个字段作为列标题的数据来源,指定
23、一个字段作为值的来源。(3)在交叉表设置时,作为行标题的字段最多可以设置几个?作为列标题和交叉值的字段最多可以设置几个?答:分别是 8,1,1。(4)删除查询或更新查询如果需要通过其他表的条件实现,如何在设计视图中实现?答:需要联合查询。可合并多个相似的选择查询的结果集。等同于将一个表追加到另一个表,从而实现将两个表的查询组合到一起。即打开一个表,在“创建”选项卡选择“查询设计” ,创建一个查询。在属性栏编辑目标量和约束条件,保存即可。实验项目 6:数据交换1导入操作(1)写出将附录中的“学院”表数据导入到“项目管理”数据库中的步骤。 (通过文本文件方式)答:(1)将学院表复制到 Word 文
24、档中并改为 t x t 格式,保存到桌面命名为 “学院” 。(2)打开项目管理数据库,单击外部数据选项卡,选择导入并连接组中的文本文件,弹出获取外部数据对话框。(3)在文件名处右侧选择浏览,选定桌面的学院文档,单击打开。(4)返回获取外部数据对话框,选择指定数据在当前数据库中的存储方式和存储位置下面的将源数据导入当前数据库的新表中。(5)单击确定按钮,弹出导入文本向导对话框,在对话框中选择固定列宽按钮。(2)写出将附录中“专业”表数据导入到“项目管理”数据库中的步骤。 (通过 Excel 文件)答:(1)将专业复制到 Excel 中并保存到桌面。(2)打开项目管理数据库,单击外部数据库选项卡,
25、选择导入并链接组的 Excel,弹出获取外部数据对话框。(3)单击浏览按钮,指定路径,选中将源数据导入到当前数据库的新表中单选按钮。(4)单击确定按钮,弹出导入数据向导对话框,选中第一行包涵列标题复选框,单击下一步按钮,对每个字段的数据类型及索引给据需要进行设置,单击下一步按钮,对主键进行设置。(5)单击完成按钮。2导出操作将“学院”和“专业”联接为一个表的查询,然后导出到 Excel 中。写出操作的主要过程。答:(1)在查询设计中添加“学院”和“专业” ;(2)点击“SQL 视图”输入select * from 学院 inner join 专业 on 学院.学院编号=专业.学院编号;(3)点
26、击保存查询;(4)单击工具栏中“文件“ “导出“命令。选择保存类型 “Microsoft Excel “。文件名为“ 查询 “。保存位置选择为“桌面“,按“ 导出“按钮。#回答问题(1)什么是 Access 的外部数据?为什么要进行导入、导出?答:(1)凡是不在当前 Access 数据库中存储,在其他数据库或程序中的数据称为外部数据。(2)导入文件操作实际上是将外部文件存储格式转换为 Access 表格式,再将外部文件的内容复制到 Access 表中保存。Access 从外部导入数据时,并不删除或破坏外部文件。当 Access 向外部文件导出时,原有的 Access 对象没有被删除或破坏,产生
27、的是原对象的一个副本。 (3)导出是一种重要的功能。数据库可以有效地存储数据、具有强大的查询功能。而其他软件也有其自身优势,导出可以利用其他软件的优势,来对数据库中的数据进行处理。(2)对于 Access 来说,导入和链接有什么异同点。答:相同点:这两种方式都可以使用外部数据区别:链接是以被链接数据的当前文件格式使用它,即保持原文件格式不变,在Access 中使用外部数据。导入是对外部数据制作一个副本,并将副本移动到 Access 表中,在 Access 系统中使用。(3)通过导入方式创建表与通过设计视图建表、然后输入数据有哪些不同特点?答:导入方式是利用原本的表创建,比较快,设计视图建表是没有现成的数据,必须新建。四、分析讨论1.通过撰写实验报告对 ER 模型关系模型有了更进一步的了解和认识;2.通过练习导入、导出、查询设计、SQL 视图、设计视图,对 Access 的操作更加的熟练;3.通过小组讨论研究,解决了报告撰写过程中的疑问,能够对之前相对模糊的知识点有新的深入的认识和理解;4.在填写的过程中培养了独立自主学习的习惯。五、教师评阅1按时完成实验:是: 否:2实验内容和过程记录完整:完整: 基本完整: 不完整: 3回答问题完整、正确:是: 一般: 差: 4有实验的心得或讨论:是: 否:5实验报告的撰写认真、格式符合要求,没有抄袭行为。是: 一般: 差: