资源描述
《ACCESS2010数据库应用技术》
课后习题参考答案
目录
第1章 1
第2章 3
第3章 4
第4章 5
第5章 6
第6章 7
第7章 8
第8章 9
第9章 12
第1章
一、选择题
1.B
2.A
3.B
4.B
5.D
6.C
7.A
8.D
9.C
10.A
11.C
12.D
13.B
14.D
15.B
二、填空题
1.数据库,数据库管理系统,数据库系统
2.元组,属性
3.1:n或一对多
4.选择
5.文件
6.表,窗体
三、问答题
1.答:计算机数据管理技术经历了人工管理、文件管理、数据库管理以及新型数据库系统等发展阶段。
人工管理阶段的数据管理是以人工管理方式进行的,一般不需要将数据长期保存;由应用程序管理数据;数据有冗余,无法实现共享;数据对程序不具有独立性。
文件管理阶段利用操作系统的文件管理功能,将相关数据按一定的规则构成文件,通过文件系统对文件中的数据进行存取和管理,实现数据的文件管理方式。数据可以长期保存;数据对程序有一定独立性;但数据的共享性差、冗余度大,容易造成数据不一致;数据独立性差;数据之间缺乏有机的联系,缺乏对数据的统一控制和管理。
在数据库管理阶段,由数据库管理系统对数据进行统一的控制和管理,在应用程序和数据库之间保持较高的独立性,数据具有完整性、一致性和安全性高等特点,并且具有充分的共享性,有效地减少了数据冗余。
(在数据库管理阶段,学校信息管理中应用程序与数据库之间的关系如图1-4所示。有关学校信息管理的数据都存放在一个统一的数据库中,数据库不再面向某个部门的应用,而是面向整个应用系统,实现了数据共享,并且数据库和应用程序之间保持较高的独立性。)
新型数据库系统包括分布式数据库系统、面向对象数据库系统、多媒体数据库系统等,为复杂数据的管理以及数据库技术的应用开辟新的途径。
2.答:数据独立性是指应用程序与数据库的数据结构之间相互独立。在数据库系统中,因为采用了数据库的三级模式结构,保证了数据库中数据的独立性。在数据存储结构改变时,不影响数据的全局逻辑结构,这样保证了数据的物理独立性。在全局逻辑结构改变时,不影响用户的局部逻辑结构以及应用程序,这样就保证了数据的逻辑独立性。
3.答:关系运算式如下:
(1)σ年龄>35(患者)
(2)σ职称='主任医师'(医生)
(3)π(患者病例号,患者姓名)(σ姓名='王三'(医生患者)),其中连接的条件为“医生.医生编号=患者.医生编号”。
(4)π(医生编号,姓名,职称)(σ患者姓名='刘北'(医生患者)),其中连接的条件为“医生.医生编号=患者.医生编号”。
4.答:启动Access 2010常用的方法有3种:
①在Windows桌面中单击“开始”按钮,然后依次选择“所有程序”→“Microsoft Office”→“Microsoft Access 2010”选项。
②先在Windows桌面上建立Access 2010的快捷方式,然后双击Access 2010快捷方式图标。
③双击要打开的数据库文件。
退出Access 2010的方法主要有如下4种。
①在Access 2010窗口中,选择“文件”→“退出”菜单命令。
②单击Access 2010窗口右上角的“关闭”按钮。
③双击Access 2010窗口左上角的控制菜单图标;或单击控制菜单图标,从打开的菜单中选择“关闭”命令;或按组合键Alt+F4。
④右键单击Access 2010窗口标题栏,在打开的快捷菜单中,选择“关闭”命令。
5.答:Access 2010的主窗口包括标题栏、快速访问工具栏、功能区、导航窗格、对象编辑区和状态栏等组成部分。
快速访问工具栏中的命令始终可见,可将最常用的命令添加到此工具栏中。通过快速访问工具栏,只需一次单击即可访问命令。
功能区是一个横跨在Access 2010主窗口顶部的带状区域,它由选项卡、命令组和各组的命令按钮3部分组成。单击选项卡可以打开此选项卡所包含的命令组以及各组相应的命令按钮。
在Access 2010中打开数据库时,位于主窗口左侧的导航窗格中将显示当前数据库中的各种数据库对象,如表、查询、窗体、报表等。导航窗格可以帮助组织数据库对象,是打开或更改数据库对象设计的主要方式,它取代了Access 2007之前版本中的数据库窗口。
对象编辑区位于Access 2010主窗口的右下方、导航窗格的右侧,它是用来设计、编辑、修改以及显示表、查询、窗体和报表等数据库对象的区域。对象编辑区的最下面是记录定位器,其中显示共有多少条记录,当前编辑的是第几条。
状态栏是位于Access 2010主窗口底部的条形区域。右侧是各种视图切换按钮,单击各个按钮可以快速切换视图状态,左侧显示了当前视图状态。
6.答:导航窗格取代了早期Access版本中所使用的数据库窗口,在打开数据库或创建新数据库时,数据库对象的名称将显示在导航窗格中,包括表、查询、窗体、报表等。在导航窗格可实现对各种数据库对象的操作。
第2章
一、选择题
1.C
2.A
3.A
4.D
5.B
6.C
7.A
8.C
9.B
10.A
二、填空题
1.1
2.accdb
3.不含任何数据库对象
4.字段属性区,字段名,属性
5.表的结构,表的记录(或表的内容)
6.货币型
7.字段名称
8.000000000
9.数据类型
10.冻结,隐藏
三、问答题
1.答:Access 2010提供了两种创建数据库的方法:一种是先创建一个空数据库,然后向其中添加表、查询、窗体和报表等对象;另一种是利用系统提供的模板来创建数据库,用户只需要进行一些简单的选择操作,就可以为数据库创建相应的表、窗体、查询和报表等对象,从而建立一个完整的数据库。
2.答:通常,在Access 2010中创建表的方法有4种:使用设计视图创建表、使用数据表视图创建表、使用表模板创建表和使用字段模板创建表。
3.答:可通过有效性规则属性来定义对某字段的约束,通过有效性文本定义对该字段编辑时若违反了所定义的约束应给出的提示信息。例如,对于“工龄”字段,可定义有效性规则为大于1并且小于60,有效性文本为“输入数据有误,请重新输入”。
4.答:打开数据库后,在导航窗格中对数据库对象的操作有:打开与关闭数据库对象;在数据库中添加数据库对象;复制数据库对象;通过数据库对象快捷菜单,还可以对数据库对象实施其他操作,包括数据库对象的重命名、删除、查看数据库对象属性等。删除数据库对象前必须先将此对象关闭。
5.答:排序的作用是对表的记录按所需字段值的顺序显示;筛选的作用是挑选表中的记录;如果要取消筛选效果,恢复被隐藏的记录,只需在“排序和筛选”命令组中单击“取消筛选”命令按钮。
第3章
一、选择题
1.B
2.C
3.C
4.D
5.B
6.B
7.C
8.A
9.C
10.D
二、 填空题
1.Between Date()-20 And Date() 或 Between Now()-20 And Now() 或 >=Date()-20 And <=Date() 或 >=Now()-20 And <=Now()
2."教授" Or "副教授"
3.分组
4.与,或
5.参数,生成表
三、问答题
1.答:在Access中,根据对数据源操作方式和操作结果的不同,可以把查询分为5种类型,分别是选择查询、交叉表查询、参数查询、操作查询和SQL查询。
创建查询有3种方法:使用查询向导、使用查询设计视图、使用SQL查询语句。
2.答:查询是根据给定的条件从数据库的一个或多个表中找出符合条件的记录,但一个Access查询不是数据记录的集合,而是操作命令的集合。创建查询后,保存的是查询的操作,只有在运行查询时才会从查询数据源中抽取数据,并创建动态的记录集合,只要关闭查询,查询的动态数据集就会自动消失。所以,可以将查询的运行结果看作是一个临时表,称为动态的数据集。它形式上很像一个表,但实质是完全不同的,这个临时表并没有存储在数据库中。
3.答:一个字段的值使用表达式计算得到,称该字段为计算字段。创建计算字段的方法是,在查询设计视图的设计网格“字段”行中直接输入计算字段名及其计算表达式,即“计算字段名:计算表达式”。
第4章
一、选择题
1.A
2.A
3.B
4.D
5.D
6.C
7.B
8.A
9.B
10.A
二、填空题
1.结构化查询语言
2.联合查询,传递查询,数据定义
3.UPDATE 学生 SET 成绩=[成绩]+10 WHERE 性别="女"
4.查询成绩表中所有成绩大于平均成绩的记录
5.UNION,查询结果
三、问答题
1.答:通过SQL语言可实现数据库的全面管理,包括数据查询、数据操纵、数据定义和数据控制4个方面,它是一种通用的关系数据库语言。在Access查询中,可通过SQL视图下的文本编辑器实现SQL语句的输入、编辑。
2.答:
(1)CREATE TABLE 图书(书号 CHAR(5) PRIMARY KEY,书名 CHAR(10),定价 DECIMAL(8,2))
(2)INSERT INTO 图书 VALUES("B1001","Access数据库应用技术", 32)
(3)SELECT 图书.书名, 图书.定价 FROM 图书 WHERE定价=
(SELECT MAX(定价) FROM 图书, 图书发行 WHERE 图书.书号=图书发行.书号)
UNION
SELECT 图书.书名, 图书.定价 FROM 图书 WHERE定价=
(SELECT MIN(定价) FROM 图书, 图书发行 WHERE图书.书号=图书发行.书号)
(4)SELECT 书号, 数量 FROM 图书发行 WHERE 书号 IN
(SELECT 书号 FROM 图书 WHERE 书名 LIKE '*数据库*'))
(5)查询藏有已发行的“Access数据库应用技术”一书的图书馆馆名。
第5章
一、选择题
1.C
2.C
3.C
4.D
5.A
6.B
7.C
8.A
9.C
10.D
二、填空题
1.名称
2.数据表窗体
3.子窗体
4.记录源
5.=[单价]*[数量]
三、问答题
1.答:窗体是一个为用户提供的可以输入和编辑数据的良好界面,窗体的功能大概可分为6个方面:显示和编辑数据;数据输入;查找数据;分析数据;信息显示;控制应用程序流程。
窗体类型分为:纵栏式窗体、表格式窗体、数据表窗体、主/子窗体、图表窗体、数据透视表窗体和数据透视图窗体。
窗体的6种视图是:设计视图、窗体视图、数据表视图、布局视图、数据透视表视图和数据透视图视图。
2.答:“属性表”对话框的作用:用于窗口及窗口中对象属性值的设置及事件代码的编写。例如,可通过设置“标签”对象的“标题”属性达到显示所需文字说明的目的。
3.答:一个窗体是由多个部分组成的,每个部分称为一个节,窗体可以含有5种节,分别是:页面页眉、窗体页眉、主体、窗体页脚、页面页脚。
各部分的放置的信息和数据如下:
(1)窗体页眉和页脚:窗体页眉用于放置和显示与数据相关的一些信息,如标题、公司标志或其他需要与数据记录分开的一些信息,例如当前日期、时间等。窗体页脚用于放置和显示与数据相关的说明信息,如当前记录以及如何录入数据等。
(2)主体:主体区域是窗体的核心部分,用来放置显示数据的相关控件,显示数据记录信息。
(3)页面页眉和页脚:用于放置和显示在打印窗体时在每页窗体的页面页眉和页脚必须出现的内容,一般用来显示日期、页码等信息。
4.答:在窗体上使用的控件可以分为3类:绑定型控件、未绑定型控件和计算控件。
在窗体中可以添加的控件包括:标签、文本框、列表框、组合框、复选框、选项按钮、切换按钮、选项组、按钮、选项卡、子窗体/子报表、直线、矩形、绑定对象框、未绑定对象框、图像、分页符、ActiveX控件等。
5.答:要在窗体中添加绑定控件,首先利用工具箱中的控件创建窗体的绑定控件对象,然后给绑定控件对象设置“控件来源”属性值。
假定数据库中已创建“学生成绩”表,包含“平时成绩”和“考试成绩”两个字段,可以在窗体中创建计算型控件来显示每个学生的总成绩(约定“平时成绩”、“考试成绩”分别占30%和70%),步骤是:
(1)创建窗体。
(2)在窗体中创建文本框控件。
(3)设置“文本框”控件的“控件来源”属性值为“=[平时成绩]*30/100+[考试成绩]*70/100”。
第6章
一、选择题
1.B
2.B
3.A
4.B
5.B
6.B
7.C
8.C
9.A
10.C
二、填空题
1.页面页脚,主体,组页眉
2.主体
3.报表页眉
4.报表视图、打印预览、布局视图、设计视图
5.报表设计视图
6.=[page] & "/总" & [Pages] & "页"
三、问答题
1.答:报表由从表或查询中获取的信息以及在设计报表时所提供的信息(如标签、标题和图形等)组成。报表可以对数据库中的数据进行分组、排序和筛选,另外在报表中还可以插入文本、图形和图像等其他对象。报表和窗体的创建过程基本上是一样的,只是创建的目的不同而已,窗体主要用于数据的显示和处理,以实现人机交互;报表主要用于数据的浏览和打印以及对数据的分析和汇总。
2.答:通过设置报表对象的“记录源”属性。
3.答:分组是指将某个或几个字段值相同的记录划分为一组,然后可以实现同组数据的统计和汇总。
操作时,在报表设计视图窗口中打开报表,单击“报表设计工具/设计”选项卡的“分组和汇总”命令组中,单击“分组和排序”命令按钮,显示“分组、排序和汇总”窗格。单击“添加组”按钮,“分组、排序和汇总”窗格中将添加“分组形式”栏,选择“性别”字段作为分组字段,保留排序次序为“升序”。单击“分组形式”栏的“更多”选项,将显示分组的所有选项。在全部分组选项中,可以设置分组的各种属性。
4.答:子报表是插在其他报表中的报表,包含子报表的报表称为主报表。利用子报表可以将主报表数据源中的数据和子报表数据源中对应的数据同时呈现在一个报表中,从而更加清楚地表现两个数据源中的数据及其联系。
在创建子报表之前,首先要确保主报表数据源和子报表数据源之间已经建立了正确的关联,这样才能保证子报表中的记录与主报表中的记录之间有正确的对应关系。创建子报表有两种方法:利用“子窗体/子报表”控件在已经建好的报表中插入子报表,按“子报表向导”的提示进行操作;先分别建好两个报表,然后将一个报表添加到另一个报表中。
5.答:与页面设置有关。
第7章
一、选择题
1.C
2.A
3.C
4.A
5.D
6.B
7.C
8.C
9.D
10.A
二、填空题
1.操作命令
2.宏
3.排列顺序
4.OpenForm,OpenReport,OpenQuery
5.RunDataMacro
三、问答题
1.答:宏是一种工具,利用宏可以在窗体、报表和控件中添加功能,自动完成某项任务。例如,可以在窗体中的命令按钮上将“单击”事件与一个宏关联,每次单击按钮执行该宏,完成相应的操作。
2.答:数据宏是指依附于表或表事件的宏,其作用是在插入、更新或删除表中的数据时执行某些操作,从而验证和确保表数据的准确性。
3.答:在宏的表达式中引用窗体控件的值,可以用“Forms!窗体名!控件名”,引用报表控件的值,可以用“Reports!报表名!控件名”。
4.答:在Access中,可以直接运行某个宏,也从其他宏中执行宏,还可以通过响应窗体、报表或控件的事件来运行宏。
直接运行宏主要是为了对创建的宏进行调试,以测试宏的正确性。如果要从其他的宏中运行另一个宏,必须在宏设计视图中使用RunMacro宏操作命令,要运行的另一个宏的宏名作为操作参数。通过窗体、报表或控件上发生的“事件”触发相应的宏或事件过程,使之投入运行。
5.答:名称为AutoExec的宏将在打开该数据库时自动运行,如果要取消自动运行,则在打开数据库时按住Shift键即可。
第8章
一、选择题
1.B
2.A
3.A
4.C
5.C
6.A
7.C
8.C
9.B
10.D
二、填空题
1.Int(Rnd*61+15)
2.24
3.局部变量,模块变量,全局变量
4.5
5.RecordSet
6.EOF
三、问答题
1.答:类模块是与类对象相关联的模块,所以也称为类对象模块。类模块是可以定义新对象的模块。新建一个类模块,表示新创建了一个对象,通过类模块的过程可定义对象的属性和方法。Access的类模块有3种基本形式:窗体类模块、报表类模块和自定义类模块。
标准模块是指可在数据库中公用的模块,模块中包含的主要是公共过程和常用过程,这些公用过程不与任何对象相关联,可以被数据库的任何对象使用,可以在数据库的任何位置执行。常用过程是类对象经常要使用的过程,需要多次调用的过程。一般情况下,Access中所说的模块是指标准模块。
类模块一般用于定义窗体、报表中某个控件事件的响应行为,常通过私有的过程来定义。类模块可以通过对象事件操作直接调用。
标准模块一般用来定义数据库、窗体、报表中多次执行的操作,常通过公有的过程来定义,标准模块通过函数过程名来调用。
2.答:在Access中设计窗体,其中有一个文本框、两个按钮,其中“转换”按钮的单击事件代码如下:
Private Sub cmd_convert_Click()
Dim v_result As String '结果变量
v_result = ""
If Not IsNumeric(Text0.Value) Then
MsgBox "输入的不为数值!"
Exit Sub
End If
If Len(Text0.Value) <> 3 Then
MsgBox "输入的不为3位数!"
End If
For i = 1 To 3
v_result = v_result & Mid(Text0.Value, 3 - i + 1, 1)
Next i
MsgBox "结果:" & v_result
End Sub
3.答:VBA代码如下:
Private Sub Command1_Click()
x = InputBox("请输入第一个数x的值", "请输入需比较的数")
max = x
y = InputBox("请输入第二个数y的值", "请输入需比较的数")
If y > max Then max = y
z = InputBox("请输入第三个数z的值", "请输入需比较的数")
If z > max Then max = z
Me.Text1.Value = Str(x) & "," & Str(y) & "," & Str(z)
Me.Text3.Value = max
End Sub
4.答:VBA代码如下:
Private Sub Form_Load()
Me.Text1.Value = ""
End Sub
Private Sub Command5_Click()
Me.Text1.Value = ""
m% = InputBox("请输入欲判断季节的月份的值", "注意:只可为1-12之间的整数")
Select Case m
Case 2 To 4 ' 春季
Me.Label2.Caption = Trim(Str(m)) & "月份的季节为"
Me.Text1.Value = "春季"
Case 5 To 7 '夏季
Me.Label2.Caption = Trim(Str(m)) & "月份的季节为"
Me.Text1.Value = "夏季"
Case 8 To 10 '秋季
Me.Label2.Caption = Trim(Str(m)) & "月份的季节为"
Me.Text1.Value = "秋季"
Case 11 To 12, 1
Me.Label2.Caption = Trim(Str(m)) & "月份的季节为"
Me.Text1.Value = "冬季"
Case Else '无效的月份
Me.Text1.Value = "输入的是无效的月份"
End Select
End Sub
5.答:VBA代码如下:
Private Sub Command1_Click()
Dim m As String
Me.Text1.Value = ""
m = "2"
For i% = 3 To 99 Step 2
For j% = 2 To i - 1
Lx% = i Mod j
If Lx = 0 Then
Exit For
End If
Next
If j > i - 1 Then
m = m + " ," + Trim(Str(i))
End If
Next
Me.Text1.Value = m
End Sub
6.答:(1)在教学管理数据库中,添加一条记录的过程如下。
Sub AddRecord(kc_hao As String, kc_name As String, kc_class As String, kc_score As Integer)
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
On Error GoTo GetRS_Error
Set conn = CurrentProject.Connection '打开当前连接
rs.Open strSQL, conn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs.Fields("课程号").Value = kc_hao
rs.Fields("课程名").Value = kc_name
rs.Fields("课程类别").Value = kc_class
rs.Fields("学分").Value = kc_score
rs.Update
Set rs = Nothing
Set conn = Nothing
End Sub
(2)查找课程名为“数据结构”的记录,并将其学分更新为3。其代码实现如下:
Sub ExecSQL()
Dim conn As New ADODB.Connection
Set conn = CurrentProject.Connection '打开当前连接
strsql = "update 课程 set 学分=3 where 课程名='数据结构'"
conn.Execute (strsql)
Set conn = Nothing
End Sub
(3)删除课程号为“Z0004”的记录。其实现方法只需将ExecSQL()过程中的SQL语句改为:strsql = "delete * from 课程 where 课程号='Z0004'"
第9章
一、选择题
1.D
2.C
3.A
4.C
5.A
6.A
二、填空题
1.导入,导出,共享
2.后端数据库,前端数据库
3.商品信息_2013-06-20.accdb
4.独占
5.数据库文档管理器,分析性能,分析表
三、问答题
1.答:导入数据是将数据复制于数据库中,源数据变化将不影响数据库中的数据。链接数据是将链接至数据库中,源数据变化将影响数据库中的数据,并保持一致。
2.答:数据库的备份有助于保护数据库,以防出现系统故障或误操作而丢失数据。备份数据库时,Access首先会保存并关闭在设计视图中打开的所有对象,然后可以使用指定的名称和位置保存数据库文件的副本。
3.答:在使用数据库文件的过程中,要经常对数据库对象进行创建、修改、删除等操作,这时数据库文件中就可能包含相应的“碎片”,数据库文件可能会迅速增大,影响使用性能,有时也可能被损坏。在Access 2010中,可以使用“压缩和修复数据库”功能来防止或修复这些问题。
4.答:首先“以独占方式打开”数据库文件,然后选择“文件”→“信息”命令,再单击“用密码进行加密”按钮,在弹出的“设置数据库密码”对话框中输入数据库密码。
当不需要密码时,可以对数据库进行解密。以独占方式打开加密的数据库,选择“文件”→“信息”命令,单击“解密数据库”按钮,在“撤消数据库密码”对话框中输入设置的密码,然后单击“确定”按钮。
5.答:使用受信任位置中的数据库有3个步骤:使用信任中心创建受信任位置;将数据库保存或复制到受信任位置;打开并使用数据库。
18
展开阅读全文