《数据库及应用》PPT课件.ppt
第六章数据库及应用第六章数据库及应用6.1 数据库系统概述数据库系统概述 n数据量急剧增长,海量信息需要处理数据量急剧增长,海量信息需要处理n百度拥有百度拥有10亿的中文网页数据库亿的中文网页数据库n嫦娥一号传回来的各种数据存储到数据库嫦娥一号传回来的各种数据存储到数据库北京密云的50口径天线地面站,承担嫦娥1号科学探测数据的接收任务n超市收款用到商品数据库超市收款用到商品数据库 数据库管理系统数据库管理系统Access和和Excel异同异同 学习了学习了Excel为何还要学习为何还要学习Access?n数据量很大时,数据量很大时,Excel处理时的速度效率比较低,处理时的速度效率比较低,它的速度会明显下降它的速度会明显下降nAccess,操作的界面和后台的数据可完全隔离,操作的界面和后台的数据可完全隔离,用户可不理会后台数据的组织形式,而用户可不理会后台数据的组织形式,而Excel,用,用户面对的就是数据本身,一旦数据丢失或改错了,户面对的就是数据本身,一旦数据丢失或改错了,恢复困难恢复困难nAccess 在在Web动态网站中常充当后台数据库的动态网站中常充当后台数据库的角色。用户通过角色。用户通过Web浏览器与后台数据库进行交浏览器与后台数据库进行交流查询,结果以网页形式从流查询,结果以网页形式从Web 服务端传送回客服务端传送回客户端浏览器户端浏览器 n对于对于 Access,不同的用户可以同时存取数据库,不同的用户可以同时存取数据库中的同一个数据中的同一个数据 总之,总之,Excel在制作一般的电子表格,在制作一般的电子表格,数据统计与分析方面功能比较强,也比较数据统计与分析方面功能比较强,也比较便利。而数据管理和开发中小型应用软件便利。而数据管理和开发中小型应用软件是是Access的优势,它对于一般的数据录入、的优势,它对于一般的数据录入、统计与分析方面没有统计与分析方面没有Excel方便。方便。数据管理技术的产生和发展n人工管理人工管理n文件系统文件系统n数据库系统数据库系统 数据库系统的优点数据库系统的优点 n数据结构化数据结构化 数据库系统中的数据必须按照某一特定数据库系统中的数据必须按照某一特定的数据模型组织,具有特定的统一的结构。的数据模型组织,具有特定的统一的结构。n数据共享度高数据共享度高 数据库系统从整体角度看待和描述数据,数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,数据不再面向某个应用而是面向整个系统,数据可以通过数据库管理系统被多个应用程数据可以通过数据库管理系统被多个应用程序或多个用户所共享。数据共享可以大大减序或多个用户所共享。数据共享可以大大减少数据冗余,节约存储空间。少数据冗余,节约存储空间。n用户与数据库之间的关系见下图用户与数据库之间的关系见下图应用程序1应用程序2数据库(Database)数据库管理系统(DBMS)用户1用户n6.1.1 数据库与数据库管理系统n数据库(数据库(Database,简称,简称DB)是长期储存在计算机外部存储器中的、有结构的、可共享的数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为不同的用户共享。数据库就是计算机中存放数据的地方。n数据库管理系统数据库管理系统n(Database Management System,简称,简称DBMS)是位于用户和操作系统之间的系统软件是位于用户和操作系统之间的系统软件它能对数据库进行有效组织、管理和存取它能对数据库进行有效组织、管理和存取DBMS是数据库系统的核心,其主要工作就是数据库系统的核心,其主要工作就是管理数据库,为用户或应用程序提供访问数是管理数据库,为用户或应用程序提供访问数据库的方法据库的方法DBMS在操作系统的支持下,支持用户对数在操作系统的支持下,支持用户对数据库的各项操作。据库的各项操作。n数据库系统(数据库系统(Database System,简称,简称DBS)DBS指带有数指带有数据库的计算机据库的计算机应用系统,由应用系统,由图中各部分组图中各部分组成。常把数据成。常把数据库系统简称为库系统简称为数据库。数据库。数数 据据 库库DB数数据据库库管管理理系系统统DBMS应用程序应用程序1应用程序应用程序2应用程序应用程序3应用程序应用程序n用户用户1用户用户2用户用户m数数 据据 库库 系系 统统 DBS(含五部分:硬件系统、数据库、含五部分:硬件系统、数据库、DBMS、应用软件、应用软件、DBMS维护管理人员)维护管理人员)数据数据记录记录 5数据库 数据库是由一个称为数据库管理系统的软件进行管理,使得它能以最佳的方式,最少的数据重复为多个用户服务。(数据库中的数据是统一存储、集中管理的。他们可以由多个用户共享。)6.1.2 数据模型及关系数据库n数据模型数据模型层次数据模型层次数据模型现有数据库系统均是基于某种数据模型的网状数据模型网状数据模型关系数据模型关系数据模型 学生学生编编号号大学英大学英语语数学数学大学大学计计算机算机0700188926707002828989070036583500700474698507005918990说明了学生和课程成绩之间的关系n数据库的分类数据库的分类层次型数据库层次型数据库网络型数据库网络型数据库关系型数据库关系型数据库层次数据模型层次数据模型-反映一对多关系(树型)反映一对多关系(树型)网状数据模型网状数据模型-反映多对多关系反映多对多关系 关系数据模型关系数据模型-二维表的关系二维表的关系 n关系型数据库特性关系型数据库特性 关系数据关系数据库库中,数据都是以二中,数据都是以二维维表(称表(称为为关系)关系)的形式的形式组织组织起来的。起来的。二二维维表的第一行,是各字段的名称,称表的第一行,是各字段的名称,称为为字段名字段名二二维维表的列称表的列称为为字段字段,表示了事物的各种属性表示了事物的各种属性,字字段是数据表的可段是数据表的可访问访问的最小的最小逻辑单逻辑单位位二二维维表的行称表的行称为为记录记录。记录记录整体地表示了一个事物整体地表示了一个事物的各个属性或各事物之的各个属性或各事物之间间的的联联系系字段名字段值记录记录以以Access关系型数据库管理系统为例关系型数据库管理系统为例n一个二维表可以构成一个简单的关系数据一个二维表可以构成一个简单的关系数据库。库。二二维维表有如下特性表有如下特性:一个二一个二维维表中,所有的表中,所有的记录记录格式相同,格式相同,长长度相同。度相同。在同一个二在同一个二维维表中,字段名不能相同。表中,字段名不能相同。同一字段数据的同一字段数据的类类型相同,它型相同,它们们均均为为同一同一属性的属性的值值。行和列的排列顺序并不重要。行和列的排列顺序并不重要。6.2 Access数据库和数据表数据库和数据表n建立数据库建立数据库 根据实际问题的需要建立数据库,在根据实际问题的需要建立数据库,在数据库中建立若干个表结构,并向表中输数据库中建立若干个表结构,并向表中输入具体的数据,再建立表间的联系。入具体的数据,再建立表间的联系。Access 基本功能基本功能n数据库操作数据库操作 对于数据库中的表执行增加、删除、修对于数据库中的表执行增加、删除、修改、索引、排序、检索(查询)、统计分析、改、索引、排序、检索(查询)、统计分析、打印或显示报表、制作网页等操作打印或显示报表、制作网页等操作 n数据通讯数据通讯 在在Access 与与Excel、Word等之间实等之间实现数据的传输和交换现数据的传输和交换6.2.3 数据库和数据表的创建nAccess 提供了三种创建数据库的方法使用Access 提供的模板,在“数据库向导”帮助下,对向导所给出的选项做出不同选择,可建立一个包含表、查询、窗体、报表等对象的数据库先创建一个没有表、查询等任何对象的空数据库,然后再添加表、查询、报表及其它对象根据现有数据库文件新建,用这种方法可以快速创建一个数据库的副本n创建空数据库开始”“程序”“Microsoft Office Access”,再选择菜单栏上的“文件”下的“新建”命令,显示“新建文件”的“任务窗格”如图5-7-1所示。选择菜单栏上的“文件”“新建”在“新建文件”的“任务窗格”选择“空数据库”,“学生成绩管理”n数据库窗口n工具栏数据库工具栏主要按钮及功能 七种数据库对象七种数据库对象从某些数据表中根据查从某些数据表中根据查询准则的要求抽取特定询准则的要求抽取特定的信息的信息数据的输入和输数据的输入和输出显示格式控制出显示格式控制将查询出的记录以表格将查询出的记录以表格方式显示或打印出来方式显示或打印出来操作指令的集合操作指令的集合每个操作实现特定每个操作实现特定功能功能用用V BA编写的编写的函数(模块)函数(模块)保存数据库中的数据是保存数据库中的数据是数据库的核心数据库的核心 Access 2003 数据库的构成数据库的构成用户可以直接通用户可以直接通过它建立过它建立Web页页Access 数据库的构成n数据基本表(数据基本表(二维表、二维表、表)表)表的栏目(表的栏目(表结构)表结构)表中一行称为表中一行称为记录记录,记录是数据库的记录是数据库的基本(操作)单位基本(操作)单位 表中一列称为表中一列称为字段字段,字段是数据库的字段是数据库的最小逻辑单位最小逻辑单位数数 据据 表表 视视 图图字字段段名名表表中中记记录录第一条记录第一条记录前一条记录前一条记录记录号记录号下一条记录下一条记录最后一条记录最后一条记录表中的记录数表中的记录数数据表视图的作用是:数据表视图的作用是:向表录入记录数据向表录入记录数据n查询查询 在数据库的表或查询中检索特定信息在数据库的表或查询中检索特定信息n窗体窗体 用于数据的用于数据的输输入、入、显显示、示、编辑编辑修改和修改和计计算等,以及算等,以及应应用程用程序的序的执执行控制。行控制。n报表报表 输出检索到的信息,可以显示或打印输出检索到的信息,可以显示或打印n宏宏 若干个若干个AccessAccess命令的序列,用以简化一些经常性的操作命令的序列,用以简化一些经常性的操作n页页 可将数据发布可将数据发布InternetInternet上,并可使用浏览器进行数据的维上,并可使用浏览器进行数据的维护和操作护和操作n模块模块用用AccessAccess所提供的所提供的VBAVBA语言编写的程序段语言编写的程序段一个数据库文件学生信息表学生信息表学生成绩管理.mdb 成绩表成绩表数学及格查询数学及格查询成绩报表成绩报表5.7.4 简单的学生成绩管理系统的设计简单的学生成绩管理系统的设计 n系统分析 n系统设计 “学生信息学生信息”表和表和“成绩成绩”表分别见表表分别见表5.3和表和表5.4 n系统实现 n系统运行与维护n使用表向导创建表 使用Access提供的示例表,按照提示完成表的结构的创建 n通过输入数据创建表 利用数据表视图,直接输入数据创建表 n使用设计器创建数据表5.8数据表的建立数据表的建立5.8.1 使用表向导和通过输入数据创建表n使用设计器创建数据表建立表的结构和输入数据 n数据表结构的建立使用设计器创建数据表 n表结构的相关概念字段的名称可用164个字符数据类型字段属性 字段到底选用字段到底选用什么数据类型要根什么数据类型要根据实际需要而定据实际需要而定字段属性 n不同数据类型的字段有不同的属性。介绍其中主不同数据类型的字段有不同的属性。介绍其中主要的几种:要的几种:字段大小字段大小 该属性限定文本字段的大小和数字型数据的种该属性限定文本字段的大小和数字型数据的种类。对文本字段,字段大小可取值的范围为类。对文本字段,字段大小可取值的范围为1255,默认值为,默认值为50。应该以该字段输入的最大字符数来。应该以该字段输入的最大字符数来确定字段大小,如确定字段大小,如“性别性别”字段,其字段大小取可字段,其字段大小取可1。对数字型字段,字段大小用来定义数字型数据的种对数字型字段,字段大小用来定义数字型数据的种类和取值范围、小数点位数等类和取值范围、小数点位数等格式格式 控制数据显示和打印的格式。不同类型的数据控制数据显示和打印的格式。不同类型的数据可以选择不同的显示和打印格式可以选择不同的显示和打印格式输入掩码输入掩码例例5.8.2 利用输入掩码向导来完成对利用输入掩码向导来完成对“出生年月出生年月”字段掩码的输入,使其具有下图的效果字段掩码的输入,使其具有下图的效果。小数位数小数位数 指定小数点右边可以显示的小数位数范指定小数点右边可以显示的小数位数范围在围在015位之间。如果字段大小为字节、整位之间。如果字段大小为字节、整型、长整型,则小数位数自动为型、长整型,则小数位数自动为0位。单精位。单精度型可为度型可为07位小数;双精度型则为位小数;双精度型则为015位位小数;货币型默认为小数;货币型默认为2位小数。位小数。标题标题默认值默认值但如不对格式属性进行设但如不对格式属性进行设置,或者将格式属性设为置,或者将格式属性设为“常规数字常规数字”,则小数位,则小数位数属性设置无效数属性设置无效 有效性规则有效性规则 有效性规则是给字段输入数据时设置的限制条件。如高有效性规则是给字段输入数据时设置的限制条件。如高考分数不可能为负数,可以为考分数不可能为负数,可以为“高考分数高考分数”字段设置字段设置“=0”的有效性规则。的有效性规则。有效性有效性规则规则表达式表达式含含义义0可以可以输输入一个非零入一个非零值值0 Or 100值值必必须为须为 0 或大于或大于 100=#97-1-1#And 大于总分240查询总分大于240的记录不等于大学英语0查询大学英语不为0的记录=大于等于略略小于略略=60 and 85查询数学成绩在6084之间的记录or(或)数学85查询数学成绩在60以下或者85以上的记录n创建参数查询创建参数查询 当运行参数查询时,用户随机输入参数当运行参数查询时,用户随机输入参数值(查询条件),系统会根据输入的参数给值(查询条件),系统会根据输入的参数给出查询结果,从而可以实现交互式查询出查询结果,从而可以实现交互式查询n参数查询实质上是把选择查询的参数查询实质上是把选择查询的“条件条件”设设置成一个带有参数的置成一个带有参数的“可变条件可变条件”n参数查询可以通过查询设计器创建参数查询可以通过查询设计器创建n其操作步骤与利用查询设计器创建查询是类其操作步骤与利用查询设计器创建查询是类似的,可以在条件行中输入方括号括起的名似的,可以在条件行中输入方括号括起的名字和短语作为参数的名称字和短语作为参数的名称n打开查询时需要输入具体的参数。打开查询时需要输入具体的参数。511创建实用报表创建实用报表5111 报表的种类报表的种类 n纵栏式报表纵栏式报表 每行显示一个字段每行显示一个字段n表格式报表 每行显示一个记录的各个字段每行显示一个记录的各个字段n图表报表 Access 在图表报表提供了在图表报表提供了20种图表,种图表,包括柱形图、折线图、饼图等。包括柱形图、折线图、饼图等。柱形的图表报表 n标签报表 标签报表将数据表示成邮件标签形式,标签报表将数据表示成邮件标签形式,准考证等常用这种形式。准考证等常用这种形式。5112 创建报表创建报表 n使用使用“自动创建报表自动创建报表”建立报表建立报表 n使用使用“报表向导报表向导”创建报表创建报表n使用设计视图创建报表使用设计视图创建报表 n构成报表的五个节构成报表的五个节报表页眉:报表首页的顶部,一般用于放置报表报表页眉:报表首页的顶部,一般用于放置报表的标题的标题 页面页眉:报表中每页的顶部,可用于显示每一页面页眉:报表中每页的顶部,可用于显示每一页的标题页的标题主体:报表的中间部分,用于显示报表中的数据。主体:报表的中间部分,用于显示报表中的数据。即报表数据源中的各条记录放在主体节中即报表数据源中的各条记录放在主体节中 页面页脚:报表中每页的底部,与页面页眉相对页面页脚:报表中每页的底部,与页面页眉相对应。可利用它显示页码等应。可利用它显示页码等 报表页脚:整个报表的最后一页的底部,与报表报表页脚:整个报表的最后一页的底部,与报表页眉相对应。页眉相对应。例例584 以以“成绩成绩”表为数据源,创建一表为数据源,创建一个如图个如图5-11-7所示名为所示名为“综合分计算综合分计算”的报的报表,包含学生编号、数学、大学英语、大学表,包含学生编号、数学、大学英语、大学计算机、综合分,其中,综合分计算机、综合分,其中,综合分=数学数学04+大学英语大学英语03+大学计算机大学计算机03。n工具箱及控件工具箱及控件 工具箱是一个工具箱是一个“命令中心命令中心”,它包括设计各,它包括设计各种控件所需的工具种控件所需的工具 在设计或修改报表时,可以利用在设计或修改报表时,可以利用Access提提供的报表控件来美化报表供的报表控件来美化报表 控件按钮 功能和说明 选择对象使用它可以对控件进行选择、定尺寸、移动和编辑 标签可以创建显示和说明文本的控件,如:报表上的标题或说明性文字 文本框用来创建文本框,显示、输入或编辑表中的数据 选项按钮用于创建单选按钮 复选框按钮用于创建复选框 直线用它可以将一个报表分成不同的部分 其它控件按钮单击此按钮,系统将会显示所有已加载的控件,提供用户使用工具箱中常用控件按钮、功能和说明 报表向导和设计器的使用场合报表向导和设计器的使用场合向导多表、计算平均总计、最大、最小设计器单表、一般的公式、格式变化512 窗体窗体 nAccess数据库中应用最广泛的对象数据库中应用最广泛的对象n窗体可以为用户提供一个形式友好、内容丰富的窗体可以为用户提供一个形式友好、内容丰富的数据库操作界面数据库操作界面n窗体可以作为输入、输出数据的常用界面窗体可以作为输入、输出数据的常用界面n制作数据库应用系统的重要工具制作数据库应用系统的重要工具n可以直接通过窗体界面来使用应用系统的各种功可以直接通过窗体界面来使用应用系统的各种功能能n窗体是数据库中最灵活的部分,起着联系数据库窗体是数据库中最灵活的部分,起着联系数据库与用户的桥梁作用。与用户的桥梁作用。5121窗体的种类窗体的种类n数据交互型窗体数据交互型窗体 是数据库应用系统中应用最多的一类窗是数据库应用系统中应用最多的一类窗体,利用窗体可以对数据库中相关的数据进体,利用窗体可以对数据库中相关的数据进行显示、添加、编辑和修改等操作行显示、添加、编辑和修改等操作n数据交互型窗体的特点数据交互型窗体的特点 它必须有数据源,数据源可以是数据库它必须有数据源,数据源可以是数据库中的表或查询等中的表或查询等n命令选择型窗体 数据库应用系统通常具有一个主操作界面窗体,数据库应用系统通常具有一个主操作界面窗体,在这个窗体上安放一些命令按钮以实现对数据库应在这个窗体上安放一些命令按钮以实现对数据库应用系统中其它窗体的调用,常同时显示了本系统所用系统中其它窗体的调用,常同时显示了本系统所具有的全部功能。从应用的角度来看,这属于命令具有的全部功能。从应用的角度来看,这属于命令选择型窗体。选择型窗体。“学生成绩管理系统”主界面,通过单击选择不同的选项,可以调用系统的不同功能模块,完成不同的操作5122使用自动方式创建窗体使用自动方式创建窗体 n本方式是创建窗体最简单的方法本方式是创建窗体最简单的方法n本方式能够创建三种窗体本方式能够创建三种窗体纵栏式、表格式、数据表纵栏式、表格式、数据表创建步骤见下图创建步骤见下图 5123使用窗体向导创建窗体使用窗体向导创建窗体n用窗体向导创建窗体的过程中,可以选择用窗体向导创建窗体的过程中,可以选择窗体中所需的字段窗体中所需的字段窗体的布局窗体的布局窗体的背景样式窗体的背景样式 n例:例:使用向导创建一个使用向导创建一个“学生信息添加学生信息添加”的窗体,的窗体,以便向以便向“学生信息学生信息”表中添加新的学生记录。表中添加新的学生记录。5124使用设计视图创建窗体使用设计视图创建窗体 n使用窗体设计视图不仅可以创建窗体,特使用窗体设计视图不仅可以创建窗体,特别是创建命令选择型窗体,还可以修改窗别是创建命令选择型窗体,还可以修改窗体的设计。体的设计。n例:使用设计视图创建一个例:使用设计视图创建一个“学生信息编辑学生信息编辑”窗体。窗体。n管理包含两个层次,对象内部的管理和对象整体管理包含两个层次,对象内部的管理和对象整体的管理的管理n在对象内部实施管理的操作,包括对具体对象结在对象内部实施管理的操作,包括对具体对象结构和数据的管理,已经在以上各节中作了介绍构和数据的管理,已经在以上各节中作了介绍n本节介绍对于对象(如表、查询、报表和窗体等)本节介绍对于对象(如表、查询、报表和窗体等)的整体管理的整体管理n选定了对象之后,对数据库中的对象的整体管理选定了对象之后,对数据库中的对象的整体管理操作都是一样的操作都是一样的n将以数据表为例,介绍数据库对象的备份、恢复、将以数据表为例,介绍数据库对象的备份、恢复、更名和删除等操作方法更名和删除等操作方法 513 管理数据库5131 数据库对象的备份和恢复数据库对象的备份和恢复n在数据库内部备份在数据库内部备份例:为例:为“学生成绩管理学生成绩管理”数据库的数据库的“学生信息学生信息”表表作一个名为作一个名为“学生信息学生信息-1”的备份,放在库中。的备份,放在库中。n备份放到其它数据库文件中备份放到其它数据库文件中 例:为例:为“学生信息学生信息”表作一个名为表作一个名为“学生信息学生信息-2”备份,放到另一个数据库中。备份,放到另一个数据库中。n数据库对象的恢复数据库对象的恢复单击工具栏中的单击工具栏中的“撤消撤消”按钮按钮 5132 数据库对象的改名数据库对象的改名n用鼠标右击该对象用鼠标右击该对象弹出的快捷菜单中选择弹出的快捷菜单中选择“重重命名命名”在出现文本框中在出现文本框中键入新的对象名键入新的对象名n注意:在改名前,要关闭需改名的数据库对象注意:在改名前,要关闭需改名的数据库对象 5133 数据库对象的删除数据库对象的删除 n在数据库窗口中选定要删除的对象在数据库窗口中选定要删除的对象按按键键在系统弹出的确认框中确认删除在系统弹出的确认框中确认删除n说明说明一是打开的对象不能删除一是打开的对象不能删除在删除对象之前,如果对象已经打开则要先关闭它。在删除对象之前,如果对象已经打开则要先关闭它。如果它与其它对象存在关系,则要先删除这个关系。如果它与其它对象存在关系,则要先删除这个关系。