1、项目11 创建学生管理数据库11.1项目提出在学校工作的王老师是一名学生管理人员,主要负责学生基本信息管理、学生成绩管理及学生所开课程管理等工作。在工作中经常会遇到这样的问题,查找某个学生某一门课程的成绩、查找某个班级所开课程或者统计每个班级每门功课的不及格学生人数等,如果一个一个学生的查找将会浪费大量的时间、人力和物力,并严重影响了工作效率,还容易出现错误。有什么好的办法可以帮助王老师解决这个问题呢?11.2相关知识点Access2007就可以帮助王老师比较轻松的完成这项工作。Microsoft Access 2007是美国微软公司最新推出的办公自动化软件Microsoft Office 2
2、007的组件之一,是Windows操作系统下最为流行的功能强大的桌面数据库管理系统开发工具。数据库(DataBase,DB)就是存储在计算机中相关数据的集合。数据库可以直观地理解为存放数据的仓库。例如:日常生活中,学校记录了每个学生的学号、姓名、性别、出生日期、所在班级等信息,这个学生记录就是一个简单的“数据库”。每个学生的学号、姓名、班级等信息即使这个数据库中的“数据”,可以在这个“数据库”中添加新生信息,也可以删除或修改该数据。11.2相关知识点数据库管理系统(DataBase Management System,DBMS)是对数据库进行管理的系统软件,作为数据库系统的核心软件,其主要目标
3、是使数据库成为方便用户使用的资源,易于为各种用户所共享,并增强数据的安全性、完整性和可用性。常见的数据库管理系统有:Visual Foxpro、Access、SQL Server、Oracle等。11.2相关知识点Access是一个关系型数据库管理系统,它通过各种数据库对象来管理信息。不同的数据库对象在数据库中起着不同的作用,如利用表来存储信息、利用窗体来查看信息、使用查询来搜索信息等。Access2007数据库的对象主要包括表对象、查询对象、窗体对象、报表对象、宏以及模块对象等。11.2相关知识点 表对象是同一类数据的集合,也是Access数据库中保存数据的地方。一个数据库中可以包含一个或多
4、个表,表与表之间可以根据需要创建关系。查询对象(Query)是按照一定的条件或准则从一个或多个表中筛选出需要操作的字段,并可以将它们集中起来,形成动态数据集。例如:查询学生的基本信息、查询2009年入学的学生考试成绩等。在实际操作中,可以随时打开已有查询进行查看,提高工作的效率。11.2相关知识点 窗体对象是用户与Access数据库应用程序进行数据传递的桥梁,其功能在于建立一个可以查询、输入、修改、删除数据的操作界面,以便让用户能够在最舒适的环境中输入或查阅数据。11.2相关知识点 报表对象用于将选定的数据以特定的版式显示或打印,是表现用户数据的一种有效方式,其内容可以来自某一个表也可以来自某
5、个查询。在Access中,报表能对数据进行多重的数据分组并可将分组的结果作为另一个分组的依据,报表还支持对数据的各种统计操作,如求和、求平均值或汇总等。宏对象是一个或多个命令的集合,其中每个命令都可以实现特定的功能,通过将这些命令组合起来,可以自动完成某些经常重复或复杂的制作。11.2相关知识点 模块对象就是所谓的“程序”,Access虽然在不需要撰写任何程序的情况下就可以满足大部分用户的需求,但对于较复杂的应用系统而言,只靠Access的向导及宏仍然稍显不足,所以Access提供VBA程序命令,可以自如地控制细微或较复杂的操作。11.2相关知识点利用Access 2007建立学生管理数据库主
6、要步骤是:创建数据库创建表对象,主要包括:创建表对象的结构、向表中输入数据、创建表对象之间的关联创建查询对象创建窗体、报表对象通过以上步骤可以创建一个简单的学生管理数据库,实现学生、课程、考试成绩等信息的录入、删除、修改以及查找相关信息等一系列的功能。11.2相关知识点 11.3.1建立数据库在创建数据库之前需要先启动Access2007,具体启动步骤与前面几章介绍的word、excel、powerpoint等启动方法类似,不再介绍。11.3项目实施图11-1 启动Access2007界面(a)图11-1 启动Access2007界面(b)11.3项目实施1、创建数据库要想实现管理学生的功能就
7、需要创建一个学生管理数据库,创建的具体方法如下:1)启动Access 2007,在“启动”窗口中选中“空白数据库”,然后输入数据库文件的文件名、确定保存位置,单击【创建】按钮,即可在指定位置创建一个空白的Access数据库。如图11-2所示。本项目中创建的数据库文件名为:学生管理数据库,保存在D:目录下。11.3项目实施2)如果已经打开了一个数据库,可以单击【office按钮】()在下拉菜单中单击“新建”命令,出现如图11-2所示窗口,即可创建一个空白数据库。11.3项目实施图11-2 创建空白数据库2、打开及关闭数据库当用户要使用已经建好的数据库时,必须首先打开该数据库;当用户完成了对数据库
8、的全部操作并且不需要继续使用它时,应将其关闭。1)打开数据库打开数据库的操作除了可以在启动Access 2007时利用Microsoft Access对话框来完成以外,也可以随时利用【office按钮】中的“打开”命令来完成。若要在启动Access 2007时打开数据库,应按下列步骤进行操作:11.3项目实施在Microsoft Access启动窗口(见图11-1(b))中找到“打开最近的数据库”,单击【更多】按钮,弹出“打开”对话框。“打开”对话框中选中要打开的数据库。单击【打开】按钮,打开选中的数据库。11.3项目实施若要利用【office按钮】中的“打开”命令指定的数据库,应按下列步骤进
9、行操作:在数据库窗口中,单击【office按钮】在下拉菜单中单击“打开”命令,弹出“打开”对话框。在“打开”对话框中选中要打开的数据库。单击【打开】按钮,打开选中的数据库。需要注意的是:在任何时刻,Access 2007只能打开一个数据库。若要打开另外一个数据库则必须首先关闭目前已经打开的数据库。11.3项目实施 2)关闭数据库用户完成了对数据库的全部操作并且不需要继续使用它时,应将其关闭。关闭数据库的方法有以下3种:单击数据库窗口右上角的【关闭】按钮。双击数据库窗口左上角的【office按钮】;或单击【office按钮】,然后从下拉菜单中选择“关闭数据库”命令。单击【office按钮】选择“
10、退出Access”命令。数据库的保存对数据库进行修改后,可直接单击【保存】按钮直接保存数据库。Access2007数据库文件的扩展名为.accdb。11.3项目实施11.3.2 创建、编辑表对象1创建表对象Access2007创建表分为创建新的数据库和在现有的数据库创建表两种情况。在创建新的数据库时,自动创建一个新表。在现有的数据库中创建表可以通过以下五种方式:直接创建一个空表使用设计视图创建表使用模板创建表从其他数据源(如Excel2007工作薄、Word2007文档、文本文件或其他数据库)导入或链接到表根据SharePoint列表创建表11.3项目实施1)在新数据库中创建新表例1:创建一个
11、“学生管理”数据库,同时建立“学生信息”表,其结构如表11-1所示。操作步骤如下:启动ACCESS2007,单击【office按钮】,选择“新建”命令。在右侧窗格的“文件名”文本框中,键入文件名“学生管理”,选择保存的路径为“D/”。单击【创建】按钮。11.3项目实施新数据库随即打开,将创建名为“表1”的新表,并在“数据表”视图中打开它。在“数据表”视图中,双击“添加新字段”列标题,然后在其中输入新的字段名称“姓名”,如图11-3所示。这时在右侧又添加了一个“添加新字段”列。11.3项目实施图11-3 添加“姓名”列标题选中ID字段列。在“数据表”选项卡的“字段和列”组中,单击【重命名】按钮,
12、然后输入列标题“学号”。在“快速访问工具栏”中,单击【保存】按钮。在打开的“另存为”对话框中,输入表的名称“学生信息表”,然后单击【确定】按钮,如图11-4所示。11.3项目实施图11-4 输入表名表11-1 学生信息表结构11.3项目实施字段名称数据类型字段大小说明学号文本6主键姓名文本10性别文本2系名文本10出生日期日期/时间8民族文本10总学分数字整型备注备注无完成对字段标题的修改后,就可以直接输入字段值。在输入字段值后,Access2007自动为字段设置数据类型和属性。这种方法简单快捷,但是也存在缺点。有时,字段数据类型不太恰当,字段大小也可能存在冗余。为此需要在设计视图中修改字段数
13、据类型和字段属性。11.3项目实施在Access2007工作窗口的右下角,单击 按钮,打开表的设计视图。注意这时自动切换到“设计”选项卡,如图11-5所示。在设计视图中,选中“姓名”字段,设置字段大小为“10”。设置完成后,再一次保存“系别”表。“学生信息”表中其他字段的设置方法同上。11.3项目实施图11-5“设计”选项卡11.3项目实施 2)使用设计视图创建表使用设计视图创建表是一种十分灵活但是比较复杂的方法,需要花费较多的时间。对于较为复杂的表,通常都是在设计视图中创建的。例2:在“学生管理”数据库中,创建“学生成绩表”,成绩表的结构,如表11-2所示。表11-2 学生成绩表结构11.3
14、项目实施字段名称数据类型字段大小说明学号文本6主键课程编号文本3主键成绩数字单精度型 3)使用模板创建表建“联系人”、“任务”、“问题”、“事件”或“资产”表时,可以使用Access2007内置的关于这些主题的表模板,具体步骤如下:单击【office按钮】,选择“新建”命令。在右侧窗格的在“文件名”文本框中,键入文件名,选择保存的路径,单击【创建】按钮。在“创建”选项卡上的“表”组中,单击“表模板”命令。在打开的“表模板”下拉列表中,单击“联系人”模板,则基于“联系人”表模板所创建的表就被插入到当前数据库中。11.3项目实施 3)使用模板创建表单击【保存】按钮,在打开保存对话框中,给表命名后完
15、成表的创建如果使用模板所创建的表不能完全满足需要,可以对表进行修改。简单的删除或添加字段可以在数据视图中操作,复杂的设置则需要在设计视图中进行。11.3项目实施 4)从其他数据源导入或链接到表可以通过导入自其他位置存储的信息来创建表。例如,可以导入自Excel工作表、SharePoint列表、XML文件、其他Access数据库、Outlook2007文件夹以及其他数据源中存储的信息。例3:将“课程表.xls”导入“学生管理”数据库中注:保存导入步骤是Access2007新增加的功能,对于经常进行相同导入操作的用户,可以把导入步骤保存下来,下一次可以快速完成同样的导入。学生管理数据库还包含学生选
16、课表、班级信息表等,可以参照上面介绍的方法创建。11.3项目实施 2编辑数据Access 2007数据表中的数据都是以记录的形式保存的。通过对表中记录的操作,可以对数据进行查找、复制、删除以及其他的一些相关操作。1)添加记录向数据库中添加信息,多数情况下是直接在数据表视图下完成的。2)编辑记录在数据表视图中编辑记录时,只需将插入点移到要编辑记录的相应字段处,对它直接进行修改即可。如果要取消对当前字段的修改,按【Esc】键即可。11.3项目实施 3)删除记录如果要从数据表中删除一条记录4)保存记录在Access数据表中,将插入点从编辑或修改的记录移到另一条记录或者关闭数据表时,系统自动保存编辑或
17、修改过的记录。如果要手动保存记录,可单击工具栏中“记录”区域的【保存】按钮。5)记录定位如果要对数据表中某一记录进行相应的操作,首先要找到该记录,即要定位到该记录,可以使用数据表视图底端的“记录浏览器”定位。11.3项目实施用户可在“记录浏览器”的记录编号框中输入所需定位的记录号,然后按【Enter】键直接定位到指定记录或者单击“记录浏览器”中的“第一条记录”、“上一条记录”、“下一条记录”、“尾记录”或者“新(空白)记录”按钮定位到相应的记录。6)查找记录在数据表视图中,如果记录很多,那么查找到指定的记录就不是一件容易的事情了。为了快速查找到指定的记录,用户可以单击工具栏中“查找”组中的【查
18、找】按钮。11.3项目实施 7)替换记录在数据表视图中,如果要对多条记录的某一个字段的相同值作出同样的修改,那么可以使用【替换】按钮。查找与替换的具体操作方法与Word中的查找、替换方法相同,不再叙述。8)排序记录在Access 2007中,数据表中的数据一般是以表中定义的主键值的大小按升序的方式排序显示记录的。如果在表中没有定义主键,则该表中记录的顺序根据输入的顺序来排列。11.3项目实施 9)筛选记录在数据表视图中,可以对记录进行筛选,仅将满足条件的记录显示在数据表视图中。筛选记录的方法有按指定内容筛选、按窗体筛选和按筛选目标筛选3种。11.3项目实施 3在表间建立关系创建表关系是指将数据
19、库中的关联表用关联字段联系起来,为以后创建查询、窗体和报表对象,以及输出用户所需要的信息打下基础。1)关系的类型两个表之间的关系分为“一对一”、“一对多”和“多对多”3种类型。(1)一对一关系在一对一关系中,A表中的每一条记录仅能在B表中有一个匹配记录,反之B表中的每一条记录仅能在A表中有一个匹配记录。11.3项目实施(2)一对多关系在一对多关系中,A表中的一个记录能与B表中的多个记录相匹配,反之B表中的一个记录仅能与A表中的一个记录匹配。一对多关系是关系中最常用的类型。(3)多对多关系在多对多关系中,A表中的一个记录能与B表中的多个记录匹配,反之B表中的一个记录也能与A表中的多个记录匹配。在
20、Access中是通过连接表用两个一对多的关系表示的。11.3项目实施 2)定义表间的关系在定义表间的关系之前,应该关闭所有要定义关系的表,因为不能在已打开的表之间创建关系或者对关系进行修改。11.3项目实施 3)编辑和删除关系(1)编辑已有的关系如果要打开“关系”视图窗口中已有的关系,可以按照下述步骤进行操作:点击“数据库工具”选项卡,从“显示/隐藏”组中单击【关系】按钮,打开“关系”视图窗口。单击关系线使其变粗显示,选择“工具”组中的【编辑关系】按钮(或直接双击要编辑的关系线),出现“编辑关系”对话框;在“编辑关系”对话框中重新指定两个表间的关系。单击“创建”按钮,完成关系的编辑操作,单击【
21、保存】按钮保存所做的修改。11.3项目实施 3)编辑和删除关系(2)删除已有的关系如果要删除表间已有的关系,可以按照下述步骤进行操作:打开“关系”视图窗口,在“关系”视图中显示出要编辑的关系。单击要删除的关系线使其变粗显示,或按【Delete】键,出现提示对话框;单击提示对话框中的【是】按钮,确认删除操作。11.3项目实施 1133 创建查询对象查询是Access2007数据库处理和分析数据的工具,是在指定的(一个或多个)表中根据给定的条件从中筛选所需要的信息,供使用者查看、更改和分析使用。查询是Access2007数据库的一个重要对象,通过查询筛选出符合条件的记录,构成一个新的数据集合。从中
22、获取数据的表或查询成为该查询的数据源。查询的结果也可以作为数据库中其他对象的数据源。11.3项目实施 查询通常有3种视图方式:数据表视图、设计视图和SQL视图。数据表视图主要用于在行和列格式下显示表、查询以及窗体中的数据;查询的设计视图是一个设计查询的窗口,包含了创建查询所需要的各个组件;SQL视图是一个用于显示当前查询的SQL语句窗口,可以改变SQL语句,从而改变查询。11.3项目实施 1利用查询向导创建查询在Access中可以利用简单查询向导创建选择查询,能够在一个或多个表或查询中按指定的字段检索数据。Access2007中的查询向导又分为简单查询向导、交叉表查询向导、查找重复项查询向导和
23、查找不匹配项查询向导四类。11.3项目实施 2利用设计器视图创建查询利用向导查询只能创建比较简单的查询,而利用设计视图则可以创建功能强大的查询。3修改查询创建查询以后,可以对查询进行修改。修改查询都是在相应的设计窗口中实现的。11.3项目实施 1)编辑查询字段在查询设计视图中,窗口上面部分的字段列表内列出了所有可以添加到设计网格中的字段。如果其中包含有多个表,还可以看到表与表之间的关系。对于设计网格中的字段,可以进行添加、删除或移动等操作。11.3项目实施(1)向已有的查询中添加字段选中要添加字段的查询,在查询的设计视图中将其打开。鼠标指针指向字段列表中要添加的字段,按下鼠标左键将它拖动到相应
24、位置上。修改之后单击工具栏上的【保存】按钮,关闭查询设计视图窗口。11.3项目实施(2)删除查询中的字段选中要添加字段的查询,在查询的设计视图中将其打开。单击要删除字段的列选中器,按【Delete】键或选择“查询设置”区域中的【删除列】按钮。11.3项目实施(3)在设计网格中移动字段选中要添加字段的查询,在查询的设计视图中将其打开。单击要移动字段的列选中器,选中该列;按住鼠标左键将它拖动到新的位置上。修改之后单击工具栏上的【保存】按钮,关闭查询的设计视图窗口。11.3项目实施(4)在查询中更改字段名选中要添加字段的查询,在查询的设计视图中将其打开。右击要更改的字段名,从快捷菜单中选择“属性”命
25、令,在“属性表”面板中的“标题”文本框中输入新字段名。修改之后单击工具栏中的【保存】按钮,关闭查询的设计视图窗口。11.3项目实施 2)在查询中添加、删除表或查询要向当前查询中添加、删除一些表或查询,可按下述步骤进行操作:(1)单击“查询设置”组中的【显示表】按钮,出现“显示表”对话框;在该对话框中选择要添加的表或查询,单击【添加】按钮;单击【关闭】按钮,关闭“显示表”对话框。11.3项目实施(2)要删除设计视图窗口上面部分的表或查询,先用鼠标单击该表的任意位置,然后按【Delete】键或单击鼠标右键,选择“删除表”命令。单击工具栏中的【保存】按钮。在设计视图中删除了表或查询后,从它们的字段列
26、表中拖动到设计网格中的字段也会从查询中被删除,但不会被从数据库中删除表或查询。11.3项目实施 1134 创建窗体、报表对象Access2007提供了主要的人机交互界面窗体。事实上,在Access2007应用程序中,所有操作都是在各种各样的窗体内进行的。因此,窗体设计的好坏直接影响Access应用程序的友好性和可操作性。而报表是专门为打印而设计的特殊窗体,Access2007中使用报表对象来实现打印格式数据功能,报表的建立和窗体的建立过程基本相同,只是窗体最终显示在屏幕上,而报表还可以打印出来;窗体可以与用户进行信息交互,而报表没有交互功能。11.3项目实施 1创建窗体 Access2007窗
27、体的数据来源可以是表或查询。用户可以根据多个表创建窗体,也可以为同样的数据创建不同的窗体,从而完成显示、输入和编辑数据等处理任务。窗体的主要作用有:输入数据库数据;显示与编辑数据内容;显示注释、说明或警告信息;控制应用程序的运行步骤;打印数据;创建切换面板,创建用户自定义对话框。11.3项目实施 1)窗体的构成窗体最多由5个部分构成,分别是窗体页眉、页面页眉、主体、页面页脚和窗体页脚11.3项目实施窗体页眉:显示窗体标题、窗体使用说明或打开相关窗体运行其他任务的命令按钮。页面页眉:在每一页的顶部显示标题、字段标题或所需要的其他信息。主体:用于显示窗体记录源的记录。页面页脚:在每一页的底部显示日
28、期、页码或所需要的其他信息。窗体页脚:用于显示窗体、命令按钮或接受输入的未绑定控件等对象的使用说明。11.3项目实施 2)窗体视图在Access 2007中,窗体有6种不同的视图,即设计视图、窗体视图和布局视图、数据表视图、数据透视表视图和数据透视图视图等。窗体的各种视图分别具有不同的特点和应用范围,设计时可以根据需要来加以选择。11.3项目实施(1)窗体的设计视图 在窗体设计视图中可新建窗体对象,也可以编辑窗体中需要显示的任何元素,包括需要显示的文本及样式、控件的添加和删除以及图片的插入等,还可以编辑窗体的页眉和页脚等,还可以绑定数据源和控件。11.3项目实施(2)窗体的窗体视图 窗体视图是
29、用于添加和修改表中数据的主要视图方式。如果要查看当前数据库中的所有窗体列表,可以在导航窗格的窗体列表中某个对象,即可打开该窗体的窗体视图。(3)窗体的布局视图 窗体布局视图是以行列格式来显示来自表、窗体、查询、视图或存储过程的数据的窗口。11.3项目实施(4)数据表视图窗体的数据表视图和普通数据表的数据视图几乎完全相同。窗体的数据表视图采用行、列的二维表格方式显示数据表中的数据记录。(5)数据透视表视图通过指定视图的行字段、列字段和汇总字段来形成新的显示数据记录。(6)数据透视图视图在该视图以更直观的图形方式来显示数据。11.3项目实施 3)创建窗体创建窗体的方法有很多种,包括使用设计视图创建
30、窗体、使用工具创建窗体、使用窗体向导创建窗体、使用空白窗体工具创建窗体和创建数据透视表和数据透视图窗体。主要介绍使用空白窗体工具创建窗体。11.3项目实施 2创建报表 1)报表的构成 报表由报表页眉、页面页眉、组页眉、主体、组页脚、页面页脚以及报表页脚等部分组成,每一部分称为一个节。在设计视图中,报表的节表现为带区形式。报表中的信息可以分布在多个节中,每个节在页面上和报表中具有特定的目的并按照预定次序打印11.3项目实施 2)报表的构成 报表有下列四种视图:设计视图、打印预览视图、报表视图和布局视图。报表是由数据库中的表、查询数据组合形成的,创建报表应从考虑报表的记录源入手。无论报表是简单的记
31、录罗列,还是按区域分组的销售数据汇总,首先都必须确定哪些字段包含在报表中显示的数据,以及数据所在的表或查询。11.3项目实施 3)创建报表 创建报表的方法有很多种,包括使用报表工具快速创建报表、使用报表向导创建报表、使用标签工具创建标签、使用空白报表工具创建报表和使用设计视图创建报表等。主要介绍使用空白报表工具创建报表。11.3项目实施 在使用学生管理数据库过程中,常需要将数据表、窗体和报表中的数据打印输出,下面介绍打印不同数据库对象的方法。1打印数据表 1)在数据表视图中显示要打印的表,若表中包含要打印的子数据表,单击子数据表每列左边的展开指示器()。如果打印部分记录,需要先选中要打印的记录
32、。11.4知识扩展 2)若要在打印前更改某些打印选项可单击【office】按钮,在下拉菜单中选择“打印”命令,在“打印”对话框中进行更改。如果打印特定记录,需要在“打印”对话框中选中“选中的记录”选项,单击【确定】按钮开始打印。11.4知识扩展 2打印窗体 当窗体设计好后就可以将其打印出来,在打印之前可在“打印预览”窗口中查看打印效果。3打印报表 在报表设计过程中,需要对报表进行预览,以便观察报表的输出是否符合设计要求,如果不符合则需返回设计视图进行修改,直到符合设计要求为止。11.4知识扩展为方便学生借阅图书,为学院图书馆创建一个简单的图书借阅管理系统。1明确系统功能主要功能包括查看、修改、更新图书信息和读者基本信息、统计每个学生借书数量、查看图书馆每类书籍的当前状态等。2确定数据库中所包含的表对象图书信息表、读者信息表、借书信息表、还书信息表等3创建表对象、查询对象、窗体和报表对象4将数据库发布,并进行交流分享11.5课后练习