Access数据库实验报告.docx
- 文档编号:25744850
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:18
- 大小:26.17KB
Access数据库实验报告.docx
《Access数据库实验报告.docx》由会员分享,可在线阅读,更多相关《Access数据库实验报告.docx(18页珍藏版)》请在冰豆网上搜索。
Access数据库实验报告
《数据库及其应用》
(课程编号:
B0901000)
实验报告
(2013-2014学年第2学期)
实验成绩:
学号:
姓名:
专业班级:
课堂号:
任课教师:
_
完成日期:
一、实验目的及要求
能熟练掌握Access2010的启动、退出,以及操作界面和操作方法。
能够理解关系模型的基本概念。
能够完成简单的数据库概念设计、逻辑设计和物理设计。
能够熟练建立数据库文件、表对象和关系。
能够熟练掌握基本SQL语言,能够在Access中进行一般的SQL查询。
能够运用SQL对数据库进行更新。
能够熟练掌握不同软件之间的数据交换。
二、实验设备(环境)及要求
PC机,Windows7,Office2010(主要是Access2010)
实验参考教材:
《数据库及其应用(Access及Excel)学习与实验实训教程》(第二版)。
(以下简称《实验教程》)
三、实验内容及记录
实验项目1:
熟悉Access的启动和退出,熟悉Access的界面
1.启动Access
练习不同的Access的启动方法。
(1)单击“开始”按钮,选择“所有程序|MicrosoftOffice|Microsoft
Access2010”命令。
(2)若桌面上有Access快捷图标,双击该图标。
(3)双击与Access关联的数据库文件。
2.退出Access
练习不同的Access的启动方法。
(1)单击窗口右上角的“关闭”按钮。
(2)单击窗口左上角的Access图标,在弹出的控制菜单中选择“关闭”命令。
(3)选择“文件”选项卡,在Backstage视图中选择“退出”命令。
(4)按Alt+F4.
3.观察并了解Access用户界面
不同方式启动进入Access,其界面有所差异。
通过“开始”按钮或桌面Access快捷方式启动进入Backstage视图;通过Access数据库文件关联则直接进入Access数据库窗口。
Access用户界面主要由三个组件组成:
功能区。
Backstage视图。
导航窗格。
观察Backstage视图:
不同方式进入Backstage视图,注意其差别。
①“新建”命令的Backstage视图
直接启动Access,或在“文件”选项卡中选择“新建”命令项,出现新建空数据库的Backstage视图界面。
在窗口左侧列出了可以执行的命令项。
包括“打开”、“最近使用文件”、“新建”、“帮助”、“选项”等。
②已有打开数据库的Backstage视图
若已打开数据库,单击“文件”选项卡,进入当前数据库的Backstage视图。
包括“数据库另存为”、“关闭数据库”、“信息”“打印”“保存并发布”等。
(2)观察功能区:
了解组成功能区的选项卡。
①功能区主选项卡包括“文件”、“开始”、“创建”、“外部数据”和“数据库工具”。
每个选项卡都包含多组相关命令。
在功能区选项卡上,某些按钮提供选项样式库,而其他按钮将启动命令。
4个主要命令选项卡为后四个。
②有一些选项卡属于上下文命令选项卡,根据当前的操作出现或转换。
③快速访问工具栏。
出现在窗口顶部Access图标右边显示的标准工具栏,它将常用操作
命令显示在这里,用户可以单击按钮进行快速操作。
用户可以定制该工具栏。
④快捷键。
执行命令的方法有多种。
最快速、最直接的方法是使用与命令相关联的键盘
快捷方式。
在功能区中可以使用键盘快捷方式。
(3)观察导航窗格。
各种对象的显示组合。
4.Access选项及其设置
在Backstage视图中选择“选项”命令单击,进入Access选项对话框窗口。
在该窗口可设置默认文件夹等。
选择“当前数据库”页,在该页面可设置文档窗口显示方式、定制导航窗格、定制工具栏的项目等。
#.回答问题
(1)启动Access一般有几种方法?
答:
3种.
1.单击“开始”按钮,选择“所有程序”|“MicrosoftOffice”|“MicrosoftAccess2010”菜单项单
击。
2.双击Access桌面快捷方式(若没有快捷方式可先创建)。
3.打开“计算机”窗口,找到要操作的Access数据库文件,双击
(2)按键退出Access,对应的键是什么?
答:
Alt+F4
(3)几种方式进入Backstage视图?
答:
2种。
通过“开始”按钮或桌面Access快捷方式启动进入Backstage视图。
(4)最初功能区有哪几个选项卡?
答:
“开始”“创建”“外部数据”“数据库工具”
(5)如何隐藏导航窗格?
答:
①打开数据库,然后选择“文件”选项卡,进入Backstage视图。
②选择“选项”命令,弹出“Access选项”对话框,选择“当前数据库”选项。
③取消选中“显示导航窗格”复选框,则再打开数据库是时将不会再看到导航窗格。
(6)更改Access默认文件夹怎样操作?
答:
①打开数据库,然后选择“文件”选项卡,进入Backstage视图。
②选择“选项”命令,弹出“Access选项”对话框,选择“常规”选项。
③在“默认数据库文件夹”文本框中输入要做为Access默认文件夹的路径。
(7)怎样在“快速访问工具栏”中添加“复制”按钮图标?
答:
单机快速访问工具栏右边的下三角按钮,显示“自定义快速访问工具栏”菜单,选择“其他命令”选项,弹出“Access选项”对话框,在“快速访问工具栏”中选择“复制”,再按“添加”按钮,最后单击“确定”。
实验项目2:
进行数据库设计,完成表的创建、关系定义及完整性设置,输入数据及操作数据
1.学习数据库设计的方法
按照《实验教程》中实验2、实验3的内容,认真分析、了解数据库设计中概念设计、逻辑设计、物理设计的意义及基本方法。
2.创建数据库文件
按照《实验教程》中实验3的内容,创建文件夹、数据库文件。
①在E盘上建立“test”文件夹
②启动Access,进入Backstage视图,选择“新建”命令,接着在中间窗格选择“空数据库”,单击窗口右下侧的“文件名”栏右边的文件夹浏览按钮,打开“文件新建数据库”对话框。
选择E盘、“test”文件夹,在“文件名”输入“项目管理”,单击“确定”按钮。
③返回Backstage视图,单击“创建”按钮,空数据库“项目管理”建立起来了。
3.使用表设计视图,完成所有表的创建
写出创建表的基本步骤,并附上截图(详细写出1个表的设计过程即可)
(1)在上述操作后,数据库中会自动创建初始表“表1”如图1所示。
单击功能区“视图”按钮的下拉按钮,下拉出视图切换表,选择“设计视图”,弹出“另存为”对话框,如图2所示。
输入“学院”,单击“确定”按钮,新表命名为“学院”,并进入学院表的设计视图,如图3所示。
图1初始表界面
图2“另存为”对话框
图3“学院表”对话框
在设计视图中,按照表的设计,依次输入字段名,选择类型,定义字段属性(将自动生成的ID字段删除,或将其改为“学院编号”,类型改为“文本”,字段长度设为2)。
定义主键。
选中“学院编号”字段,单击功能区“主键”按钮,设为主键。
这样,学院表就定义完毕,如图3所示。
单击快速工具栏中的“保存”按钮保存。
(2)创建专业表。
在功能区选择“创建”选项卡,切换到“创建”选项卡。
单击“表设计”按钮,Access自动进入“表1”的设计视图,然后按照“专业”表的设计,依次定义各字段的字段名,数据类型,字段属性等。
单击快速访问工具栏的“保存”按钮,弹性胡“另存为”对话框,输入“专业”,单击“确定”按钮,完成表的定义。
(3)按照相同的方法,可依次建立“学生”、“教师”、“项目”和“项目分工”表。
在定义表的过程中。
注意主键,索引,有效性规则等约束的实现。
若已给定表的电子表数据,可利用导入方式,创建表,然后进行字段属性的调整。
3.定义表之间的关系
当所有表都定义好后,通过建立关系实现表之间的引用完整性。
写出完整的操作步骤(重复操作可省略),并附上截图。
单击“数据库工具”选项卡,然后单击“关系”按钮,启动“关系”操作窗口。
单击“显示表”按钮,弹出“显示表”对话框,在对话框中按住Shift键选中所有表。
如图1所示。
图1
单击“添加”按钮,将各表添加到关系窗口中。
选中“学院”表中的“学院编号”字段,拖到“专业”表内的“学院编号”上,弹出“编辑关系”对话框,选中“实施参照完整性”复选框。
单击“创建”按钮,创建“专业”表和“学院”表之间的关系。
用类似方式建立“教师”和“学院”、“学生”和“专业”、“教师”和“项目”,以及“项目”和“学生”表之间的关系,得到整个数据库的关系。
如图2所示.
图2
5.有效性规则与有效性文本
根据表的物理设计,在创建表时,定义有效性规则属性和有效性文本。
“有效性规则”属性允许用户定义一个表达式来限定将要存入字段的值。
有效性规则是一个逻辑表达式,一般情况下,由于比较运算符和比较值构成,默认用当前字段进行比较。
“有效性文本”属性允许用户指定提示的文字。
“有效性文本”属性与“有效性规则”属性配套使用。
如果用户不定义“有效性文本”属性,Access将提示默认文本。
6.设置格式属性与输入掩码属性
按照《实验教程》实验4,设置有关格式、输入掩码属性。
(1)设置字段格式属性
要使“项目”表中的“立项日期”字段以“红色”、“中文日期”格式显示,在“项目”表设计视图中选中“立项日期”字段,然后设置“格式”字段属性值为:
yyyy\年m\月d\日[红色]
要使“项目”表中“经费”字段的显示为:
“¥开头、千位逗号分隔、2位小数、蓝色”,在设计视图中,选中“经费”字段,设置“格式”字段属性值为:
¥#,###.00[蓝色]
(2)输入掩码设置
输入掩码可定义每一位的输入字符集,属于用户定义的约束方法。
如在“教师”表中,由于“工号”是6位文本,第一位是字母、后五位有0~9数字组成,因此可以规定每一位的输入字符集。
在“教师”表设计视图中选中“工”字段,定义“输入掩码”字段属性的值为:
L00000
7.设置查阅选项。
写出实验步骤,并附截图。
进入“学院”表设计视图,选中“办公电话”字段,单击“查阅”选项卡,在“显示控件”栏中选择“列表框”,在“行来源类型”栏中选择“值列表”,在“行来源”栏中输入“座机号码”。
单击工具栏中的“保存”按钮,即可使用查阅列表用于输入。
8.数据表视图下数据记录的显示与操作
根据《实验教程》附录的数据,练习记录的添加、修改、删除数据操作。
练习数据表视图中的各种操作。
#.回答问题
(1)什么是实体码?
它在转换为关系模型后成为关系的什么?
答:
用来唯一确定或区分实体集中每一个实体的属性组合称为实体码。
转换后,它成为关系的主键。
(2)在本实验中,如果允许一名教师指导多个项目,ER图和关系有何变化?
答:
在ER图和关系中,教师与项目发生1:
n联系。
(3)1:
1联系、1:
n联系、m:
n联系转换为关系时是如何处理的?
答:
1:
1联系,可以将它与联系中的任何一方实体转化成的关系模式合并;
1:
n联系,可将其与联系中的n方实体转化成的关系模式合并;
m:
n联系,必须单独成为一个关系模式,不能与任何一方实体合并。
(4)数据库表结构设计,属于数据库设计中的什么步骤?
答:
物理设计。
(5)Access存储数据时,用到几个数据库文件?
扩展名是什么?
答:
如果不考虑页的存储的话,只有一个数据库文件,扩展名为mdb。
(6)在表结构设计中,应该包含哪些内容?
答:
包括字段名、数据类型、字段属性。
(7)在本实验设计中,共使用了哪些数据类型?
不同类型对宽度如何规定?
答:
文本型、日期/时间型、备注型、数字型、OLE对象型、字节型、单精度型等。
(8)定义表之间的关系时,“实施参照完整性”的意义是什么?
在“编辑关系”对话框中选中或者撤销“级联更新相关字段”复选框,对于数据表的操作有何影响?
答:
A.当定义了表之间的关系,实施参照完整性的话,当子表插入记录时,access会检验外键值是否具有对应的主键值,如果不存在的话,就不允许插入。
B.选中了级联更新后,当修改父表主键数据时,同时也会修改子表中对应的外键值;反之,如果不选的话就不会同时更新了。
(9)建立表的关系,是否要求发生关系的两个字段必须同名?
答:
不一定同名,但是必须具有相同的属性,也就是主键与外键互相对应。
(10)如何输入学生的照片?
答:
在设计视图时将表中的“登记照”类型定义为OLE对象,选择“插入”到“对象”命令即可。
(11)定义表时,设置“有效性文本”字段属性有何作用?
答:
当定义了一个有效性规则之后,用户针对该字段的每一个输入值或修改值都会带入表达式中运算,只有运算结果为true的值才能够存入字段;如果运算结果为false,界面上将弹出一个提示对话框提示输入错误,并要求重新输入。
(12)可以采用查阅方法输入的字段类型有哪些?
绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的值,是否可以输入?
如果一定要使输入的值限定在列表框的值的范围内,应该如何实现?
答:
A.有文本、是/否、和数字三种类型。
B.不可以输入
C.定义行来源使其在一个限定的值集合中取值或者采用其他列表框等其他控件辅助输入。
(13)若为“专业”表的“学院编号”字段设计“查阅”控件。
数据从“学院”表中来,显示“学院编号”和“学院名称”两列数据,采用列表框。
写出设计过程。
答:
A.在导航窗格中选择“专业”双击,打开“专业”的数据表视图,通过视图切换进入“专业”表的设计视图。
B.选中“学院编号”字段,选择“查阅”选项卡,并将“显示控件”属性设置为“列表框”。
C.将“行来源类型”属性设置为“表/查询”。
D.将“行来源”属性设置为“学院”。
E.将“绑定列”属性设置为1
F.将“列数”属性设置为2,定义列宽为3cm,保存表设计。
(14)在数据表浏览展开子表时,可以最多展开多少层子表?
若要同时展开每条记录的的子表,应该如何操作?
答:
最多可展开8层。
选择“格式”菜单下的“子数据表”中的“全部展开”项即可
实验项目3:
SQL视图中表达式练习
1.进入SQL视图及在不同视图间切换
按照《实验教程》实验5操作,熟悉不同视图切换。
2.不同类型数据的表达式运算
在SQL视图中分别输入以下命令,分别进入数据表视图查看结果。
写出各命令结果。
对于参数自己输入数据。
SELECT^2+(17mod3);
SELECT"Hello"+",World!
",LEFT("清华大学出版社",2)+RIGHT("清华大学出版社",3);
SELECT"你毕业的年份是",VAL(LEFT([你的学号],2))+4;
学号输入56结果为:
SELECT"现在是"+STR(YEAR(DATE()))+"年","现在的时间是:
"+CSTR(TIME());
SELECT"张三">"李四","ABCD"<"abcd",(DATE()-#1992-10-8#)>1000;
#.回答问题
(1)有哪几种方式可进入“SQL视图”?
如果用“记事本”编写了SQL语句,是否可以在SQL视图中使用?
如何操作?
答:
①单击查询工具栏的“视图”工具的下拉按钮,选择“SQL视图”选项或
单击菜单栏中“视图”,选择“SQL视图”。
②可以使用。
操作如下:
输入、编辑SQL语句;运行SQL语句并查看查询结果。
保存SQL语句为查询对象就可以了。
(2)为什么不能在数字常量前加“¥”或“$”符号表示币值常量?
“¥”或“$”有何作用?
答:
这是因为由程序控制,调用显示格式。
其中的“¥”表示定义货币的“格式”属性。
而“$”表示可以再格式属性的任何位置使用这些字符并请将这些字符原文照印。
实验项目4:
使用SQL命令进行查询和操作
1.练习SQL查询的SELECT语句
(1)查询“学院”、“专业”、“学生”完整数据
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)查询参与项目超过1项的学生学号、姓名和参加项目数。
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的创建表、插入、更新、删除操作语句
(1)在教师表中添加一个新教工信息,数据如下所示:
INSERTINTO教师VALUES("Z09031","杨飞","男","讲师","09");
(2)将“校级”项目的经费增加1000元
UPDATE项目
SET经费=经费+1000WHERE项目类别="校级";
(3)创建“已结项项目”表,包括:
项目编号、项目名称、项目类别、指导教师工号、负责人学号。
CREATETABLE已结项项目
(项目编号TEXT(10)PRIMARYKEY,
项目名称TEXT(60)NOTNULL,
指导教师工号TEXT(8)REFERENCES教师(工号),
负责人学号DOUBLEREFERENCES学生(学号));
(4)将已结项的项目转入“已结项项目”表,然后删除“已结项”的项目数据。
先执行下列语句:
INSERTINTO已结项项目(项目编号,项目名称,指导教师工号,负责人学号)
SELECT项目.项目编号,项目名称,指导教师工号,学号
FROM项目INNERJOIN项目分工ON项目.项目编号=项目分工.项目编号
WHERE分工="负责人"AND是否结项;
然后执行下列语句:
DELETEFROM项目
WHERE是否结项;
3.写出实现以下功能的SQL语句
①查询“专业”表,显示开设的所有专业涉及的专业类别。
SELECTDISTINCT专业类别FROM专业;
②查询各专业学生的人数。
SELECT专业名称,COUNT(*)AS人数
FROM学生INNERJOIN专业ON学生.专业编号=专业.专业编号
GROUPBY专业名称;
③统计没有参与项目的学生人数。
SELECTCOUNT(*)AS未参与项目人数
FROM学生
WHERE(((学生.学号)NotIn(SELECT学号FROM项目分工)));
#.回答问题
(1)不命名保存查询,与将查询保存为查询对象有何区别?
查询对象有什么作用?
答:
将查询保存为查询对象,双击这个对象就会直接运行这个查询,没有保存就不可以运行这个对象。
以后可以直接运行程序,在下次操作的时候更加方便,节省时间。
作用:
①当需要查看查询结果时,直接在查询对象界面选中相应的查询对象并打开,就可以运行查询查看结果,避免了再次重新设计查询的操作。
并且查询对性总是获取数据源表中最新的数据。
查询能自动与源表保持同步。
②查询对象可以成为其他操作的数据源。
(2)上述实验中,插入“已结项项目”表的命令是否可以省略字段列表?
为什么?
答:
给表中全部字段提供数据时字段列表可以省略,系统会根据提供数据的顺序按照表中字段的顺序输入数据。
(3)删除“已结项项目”的命令的条件为什么没有比较对象?
答:
项目表中的“是否结项”字段,是个逻辑值字段,也就是只有true和false两种情况。
"WHERE是否结项"就等价于"WHERE是否结项=1"或者"WHERE是否结项=true"这种情况。
属于省略的写法。
实验项目5:
使用交互方式进行查询和操作
1.进入查询设计视图进行交互式选择查询设置
按照《实验教程》实验7,练习可视交互方式的选择查询。
查看对应的SQL命令。
(1)
(2)
(3)
2.进行交叉表查询
按照《实验教程》实验7,练习可视交互方式的交叉表查询。
查看对应的SQL命令。
3.生成表查询操作
按照《实验教程》实验8,练习可视交互方式的生成表查询。
查看对应的SQL命令。
4.删除、更新查询操作
按照《实验教程》实验8,练习可视交互方式的删除、更新查询。
查看对应的SQL命令。
#.回答问题
(1)将本实验切换到SQL视图.
答:
见上述实验中的截图。
(2)深入体会交叉表查询的作用,简述交叉表查询的实质意义。
为什么本实验的交叉表只添加了两个表?
答:
交叉表事实上反映的就是对两种实体及其联系的关系表示,转换一种二维结
构来表示。
本实验的交叉表反映的是“项目分工”表和“学生”表及其联系的关系表示,所以只添加了两个表。
(3)在交叉表设置时,作为行标题的字段最多可以设置几个?
作为列标题和交叉值的字段最多可以设置几个?
答:
行标题的字段最多可以设置3个,列标题和交叉值的字段最多可以设置1个。
(4)删除查询或更新查询如果需要通过其他表的条件实现,如何在设计视图中实现?
答:
在条件一栏中按照SQL语言的格式写出WHRER后的条件。
实验项目6:
数据交换
1.导入操作
(1)写出将附录中的“学院”表数据导入到“项目管理”数据库中的步骤。
(通过文本文件方式)
a.选择Word表复制,打开记事本,粘贴,然后命名为“学院”存储。
b.进入Access,打开
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Access 数据库 实验 报告