Access数据库程序设计(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-08 01:48:41

点击下载

作者:刘雨潇,项东升

出版社:中国铁道出版社有限公司

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Access数据库程序设计

Access数据库程序设计试读:

前言

PREFACE

目前,数据处理已经成为计算机应用的主要领域。作为当今数据处理主流技术的数据库技术更是得到了广泛应用和发展,其在计算机应用领域的作用和地位日益重要。许多应用,如企业资源管理、财务管理、人力资源管理、客户关系管理、地理信息系统、数据仓库和数据挖掘等都离不开数据库技术的支持。可以说,数据库技术已经成为计算机信息技术的核心,掌握数据库知识已经成为各类科技人员和管理人员的基本要求。

典型的数据库管理系统很多,如甲骨文公司的Oracle、MySQL,微软公司的SQL Server、Access等。相对于其他数据库管理系统而言,Access作为一种桌面数据库管理系统,具有功能强大、界面友好、操作方便、应用广泛的优点。Access 2010是Access的较新版本,与原来的版本相比,Access 2010除了继承和发扬了以前版本的诸多优点外,在界面的易操作性方面、数据库操作与应用方面进行了很大改进。在本书中,采用Access 2010作为操作平台介绍数据库的基本原理及操作。

近年来,数据库技术相关知识已经成为高等学校文科类专业学生信息技术素养不可缺少的方面,该类课程已经成为继《大学计算机基础》课程之后的核心课程。在教育部高等学校文科计算机基础教学指导委员会2011年出版的《大学计算机教学要求第6版》中明确提出了数据库课程的教学基本要求:掌握数据库系统和关系模型的基本概念;掌握常用的SQL语句;掌握数据库设计的步骤和方法;掌握计算机程序设计的基本知识;提高逻辑思维能力和计算机应用能力;掌握程序设计、分析和调试的基本技能;掌握开发数据库应用系统的过程和基本技术;能够开发一个小型数据库应用系统。

本书在编写过程中参照了教育部高等学校文科计算机基础教学指导委员会提出的数据库课程的教学基本要求,同时兼顾了全国计算机等级考试二级Access数据库程序设计的考试新要求。全书共8章,主要内容有:数据库基础知识、数据库与表、查询、窗体、报表、宏、模块与VBA程序设计、数据库编程。在本书的前6章中,介绍了关系数据库的基本原理以及各个Access数据库对象的概念、特点及操作。在第7章中,介绍了程序设计的基本知识,以及各种程序语句的使用,培养学生逻辑思维能力。在第8章中,介绍了利用VBA进行数据库程序设计的基本理论和方法,使学生了解如何使用VBA对数据库进行操作。全书以“教学管理”数据库贯穿始终,围绕“教学管理”数据库设计编排了大量翔实的实例,实例全面、系统,具有启发性,而且相互呼应,也具有综合性。实例涵盖表、查询、窗体、报表、宏、模块等Access数据库对象的创建和使用方法,以及Access数据库程序设计等内容,便于读者学习、巩固和提高,为进一步学习和使用大型数据库系统打下良好的基础。

为了方便教学和读者上机操作练习,编者还编写了《Access程序设计与应用实践教程》一书,作为与本书配套的实验教材。另外,还有与本书配套的教学课件、各章习题答案、案例数据库等教学资源,可从中国铁道出版社教学服务与资源网(ttp://www.tdpress.com/5leds/)下载使用。

本书由湖北文理学院数学与计算机科学学院刘雨潇、项东升主编,其中,刘雨潇编写了第2章、第3章、第7章、第8章和附录,项东升编写了第1章、第4章、第5章和第6章。全书由刘雨潇和项东升统稿定稿。此外,参与部分编写工作的还有程建军、徐格静、王敏、丁函、任丹、詹彬、郭堂瑞等。

在本书的编写过程中参阅了一些著作和资料,在此对这些作者表示感谢。

由于编者学识水平有限,加之计算机技术的发展日新月异,书中难免存在疏漏或不当之处,敬请广大读者批评指正。如果您在学习中发现任何问题,或者有更好的建议欢迎致函,E-mail:hbwllyx1982@163.com。编者2017年11月第1章数据库基础知识1.1数据库基本概念1.1.1 数据管理

1.数据

数据(Data)是对客观事物的符号表示,是用于表示客观事物的未经加工的原始素材,如图形、符号、数字、字母等。或者说,数据是通过物理观察得来的事实和概念,是关于现实世界中的地方、事件、其他对象或概念的描述。

综上所述,数据就是指能够客观反映事实的数字和资料。

2.信息

信息是人类通过文字、图像、声音、符号、数据等获得的知识。信息来源于数据,信息与数据是不可分离的。数据是信息的表现形式,而信息则是数据内涵的意义,是数据的内容和解释。

3.数据管理

数据管理是利用计算机硬件和软件技术对各种类型的数据进行有效的收集、存储、处理和应用的过程。其目的在于充分有效地发挥数据的作用,一方面,从原始数据中得到有用的信息;另一方面,科学地保存和管理复杂的、大量的数据,以方便用户使用。1.1.2 数据管理技术

随着计算机技术的发展,数据管理技术经历了人工管理、文件系统、数据库系统3个发展阶段。

1.人工管理阶段

20世纪50年代中期,随着计算机的出现,人们开始使用计算机来管理数据,但是当时既没有专门的数据管理软件,也没有磁盘等外围存储设备,数据必须依赖于处理它的应用程序,数据与应用程序是一一对应的,如图1.1所示。

此阶段数据管理的主要特点是:(1)数据无法长期保存。程序运行时,创建或输入数据,程序结束后数据即被撤销。(2)程序复杂。由于没有专门的数据管理软件,程序员编写应用程序时,需要在应用程序中设计和说明数据的存储结构、存取方法和输入方法等。(3)数据缺乏独立性。如果数据的类型、格式或输入/输出方式等逻辑结构发生了变化,则对应的应用程序必须做出相应的修改。(4)数据不能共享,冗余度高。数据是面向程序的,一组数据只能对应一个程序,当一个程序要用到另一个程序数据时,必须重新输入这些数据,而且一个程序的多次运行,也需要对应的数据重复输入。

2.文件系统阶段

20世纪50年代后期到60年代中期,随着计算机技术的发展,硬件方面,已经出现了磁盘等外围存储设备;软件方面,操作系统中已经有了专门的数据管理软件,即文件系统,将计算机中的数据组织成相互独立的数据文件,可按文件名进行访问、查询、修改、插入和删除等操作,如图1.2所示。图1.1 人工管理阶段图1.2 文件系统阶段

此阶段数据管理的主要特点是:(1)数据可以长期保存。数据以文件的形式保存在外围存储设备上,可长期、反复对数据进行访问、管理。(2)数据共享性差,冗余度高。数据以文件的形式存在,不再依赖于应用程序,有了一定的独立性。但是文件系统只是简单地存放数据,数据的存取仍然依赖于应用程序,不同程序仍难以共享同一数据文件,而必须建立各自的数据文件。

3.数据库系统阶段

20世纪60年代后期以来,计算机应用范围越来越广泛,数据量急剧增长,多个用户、多个应用程序共享数据的要求越来越强烈,数据库技术应运而生,出现了统一管理数据的专门软件系统——数据库管理系统。将具有统一结构形式的数据存放于统一的存储介质内,形成一个数据中心,实行统一规划管理,并可被各个应用程序共享,如图1.3所示。图1.3 数据库系统阶段

此阶段数据管理的主要特点是:(1)数据结构化。采用统一的数据结构,用数据模型描述。在描述数据时不仅要描述数据本身,还要描述数据之间的联系。(2)数据共享性好,冗余度低。数据不再针对某一个具体的应用,而是面向整个系统的,数据可被多个用户和多个应用共享使用,从而大大降低了数据的冗余(但无法避免一切冗余)。(3)数据独立性高。数据由数据库管理系统统一管理和控制。数据与应用程序之间互不依赖,完全独立。即数据的逻辑结构、存储结构与存取方式的改变不会影响应用程序。1.1.3 数据库系统

数据库系统(DataBase System,DBS)是指带有数据库并利用数据库技术进行数据管理的计算机系统,是存储介质、处理对象和管理系统的集合体。一个数据库系统应由计算机硬件、数据库、数据库管理系统、应用程序和数据库管理员5部分构成。

1.数据库

数据库(DataBase,DB)是按照数据结构来组织、存储和管理数据的仓库。其数据结构独立于使用它的应用程序,对数据的增加、删除、修改和检索由统一软件进行管理和控制,使得它们可以被不同的应用程序共享,具有尽可能小的冗余度。

在日常工作中,常常需要把某些相关的数据放在一起,并根据管理的需要进行相应的处理。例如,学校教务管理部门常常要对教师、学生、课程、成绩等信息进行处理,就需要将教师(教师编号,姓名,性别,工作时间,职称等)、学生(学号,姓名,专业等)、课程(课程编号,课程名称,学分等)、成绩(学号,课程编号,成绩等)等相关的数据存放在一起,这些数据的集合就是一个数据库。在这个数据库里,可以根据需要实现各种数据管理操作,如查询某门课程不及格的学生的姓名、添加某个学生某门课程的成绩、修改某个教师的职称、删除某个学生等。

2.数据库管理系统

数据库管理系统(DataBase Management System,DBMS)是专门用于管理数据库的计算机系统软件,也是数据库系统的核心软件。DBMS在操作系统的支持下工作,为数据库提供数据的定义、建立、维护、查询、统计等操作功能。DBMS可让多个应用程序和用户用不同的方法在同时或不同时刻去建立、修改和询问数据库。

其主要功能有:(1)数据定义功能。数据库管理系统向用户提供了数据定义语言(Data Definition Language,DDL),用于描述数据库的结构,用户通过它可以方便地对数据库中的相关内容进行定义,包括对数据库、表、索引等的定义。如要在数据库中创建一个“教师信息表”,必须先说明表的结构,即确定该表的数据组成(教师编号,姓名,性别,工作时间,职称),这就需要通过数据定义语言来实现。(2)数据操纵功能。数据库管理系统向用户提供了数据操作语言(Data Manipulation Language,DML),用户通过它可实现对数据的追加、删除、更新、查询等操作。(3)数据库的运行管理。这是数据库管理系统的核心部分,包括对数据库的建立、运行、维护进行统一管理,以保证数据的安全性、完整性、一致性及多个用户对数据库的并发使用。(4)数据组织、存储与管理。数据库中需要存放多种数据,如数据字典、用户数据、存取路径等,需要数据库管理系统确定以何种文件结构和存取方式在存储级上组织这些数据,以及如何实现数据之间的联系,以便提高存储空间利用率和数据存取效率。(5)数据库的保护。数据库中的数据是信息社会的战略资源,所以数据的保护至关重要。数据库管理系统对数据库的保护通过4方面来实现:数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库的安全性控制。DBMS的其他保护功能还有系统缓冲区的管理以及数据存储的某些自适应调节机制等。(6)数据库的维护。包括数据库的数据载入、转换、转储、恢复、数据库的重组和重构以及性能监控与分析等功能。(7)通信。数据库管理系统需要提供与其他软件系统进行通信的功能,如与操作系统的联机处理、分时系统及远程作业输入的相关接口,负责处理数据的传送。对网络环境下的数据库系统,还需要提供与网络中其他软件系统的通信功能,以及数据库之间的互操作功能。

3.数据库管理员

数据库管理员(DataBase Administrator,DBA)是专门负责数据库的规划、设计、维护的工作人员。数据库管理员的主要工作包括:(1)数据库的设计。确定数据库中的信息内容和结构,决定数据库的存储结构和存取策略。(2)数据库的维护。定义数据库的安全性要求和完整性约束条件,负责并发控制、系统恢复、数据定期转存等。(3)改善系统性能。监控数据库的使用和运行,负责数据库的性能改进、数据库的重组和重构,以提高系统的性能,使系统保持最佳状态与最高效率。

4.数据库应用系统

数据库应用系统(DataBase Application System,DBAS)是指开发人员利用数据库系统开发的面向某一实际应用的软件系统。如图书管理系统、财务管理系统、教学管理系统等。一个数据库应用系统通常由数据库和应用程序两部分组成,需要在数据库管理系统支持下开发。开发一个信息系统,一是要设计数据库,二是要开发应用程序,二者是相互关联的。1.2数据模型

数据模型是用来抽象地表示和处理现实世界中的数据和信息的工具。

把现实世界中的事物抽象成数据存储于计算机数据库中是一个逐步转化的过程,它经历了两个阶段:对现实世界中事物特性的认识、概念化,进而转化为计算机数据库支持的数据,实现了从现实世界到概念世界再到数据世界的转化。1.2.1 实体及其联系

1.实体术语(1)实体:现实世界中的事物可以抽象为实体,实体是概念世界中的基本单位,它们是客观存在又能相互区别的事物,如一位教师、一位学生、一门课程。(2)实体属性:将事物的特性称为实体属性,属性刻画出了实体的特征,一个实体一般都具有多个属性,如学生有学号、姓名、性别、专业等多个属性。(3)实体属性值:实体属性的具体化表示。属性值的集合就表示一个具体的实体,如一个学生实体(学号:2010130101;姓名:张三;性别:男;专业:计算机)。(4)实体类型:实体属性的集合,用实体名及实体所有属性来表示,一个实体类型表示一类实体,如教师实体类型(教师编号,姓名,性别,工作时间,职称)。(5)实体集:具有相同属性的实体的集合,如教师李四、教师王五等就构成了一个教师实体集。

2.实体之间的联系

不同实体集之间存在着联系,如教师、学生、课程3个实体之间的联系有:学生可以选择多门课程,各门课程又由不同的教师授课。实体之间的联系主要有一对一、一对多、多对多3种类型。(1)一对一(1:1):一个实体与另一个实体之间是一一对应的关系,即一个实体集里的一条记录只与另一个实体集里的一条记录相关联。如班长与班级是一一对应的关系、学校与校长也是一一对应的关系。(2)一对多(1:n):实体集中的一个实体可以对应另一个实体集中的多个实体,即一个实体集中的一条记录与另一个实体集中的多条记录相关联。如院系与专业之间是一对多的联系、学生与寝室之间也是一对多的联系。(3)多对多(m:n):实体集中的多个实体可以对应另一实体集中的多个实体,即一个实体集中的多条记录与另一个实体集中的多条记录相关联。如教师与学生之间是多对多的联系、学生与课程之间也是多对多的联系。1.2.2 三种主要的数据模型

数据库不仅要管理数据本身,还要使用数据模型表示出数据之间的联系,任何一个数据库管理系统都需要用数据模型进行描述。用于描述数据库管理系统的数据模型有:层次模型、网状模型、关系模型3种。

1.层次模型

用树状(层次)结构表示实体类型及实体间联系的数据模型称为层次模型,层次模型是数据库系统中最早出现的数据模型。

层次模型的表示方法:树中的结点表示实体集,结点之间的连线表示相连两实体集之间的联系,层次模型只能表示一对多(1:n)联系,通常把表示1的实体集放在上方,称为父结点,表示n的实体集放在下方,称为子结点,如图1.4所示。

层次模型的结构特点如下:(1)有且仅有一个根结点。(2)根结点以外的其他结点有且仅有一个父结点。

2.网状模型

用网络结构表示实体类型及其实体之间联系的数据模型称为网状模型,网状模型的出现略晚于层次模型。在网状模型中,一个实体和另外的几个实体都有联系,这样构成一张网状图,如图1.5所示。

网状模型是一种可以灵活地描述事物及其之间复杂的联系的数据库模型。

网状模型的结构特点如下:(1)有一个以上的结点无父结点。(2)一个结点可以有多于一个的父结点。图1.4 层次模型示意图图1.5 网状模型示意图

3.关系模型

用二维表的形式表示实体和实体间联系的数据模型称为关系模型。一个关系模型的数据结构就是一张二维表,表中的一行描述一个实体,表中的一列描述实体的一个属性,通过表中具有相同意义的属性来建立实体型之间的联系,如表1.1所示。

关系模型是建立在关系代数的基础之上的,在关系模型中操作的对象和结果都是二维表。目前绝大多数数据库系统的数据模型都采用关系模型。表1.1 学生信息表1.3关系数据库

关系数据库是建立在关系模型基础上的数据库,借助关系代数等数学概念和方法来处理数据库中的数据。1.3.1 关系术语

1.关系

关系就是一张二维表,每个关系有一个关系名,即表名。

2.关系模式

对关系的描述称为关系模式,一个关系模式对应一个关系的结构,其格式为关系名(属性名1,属性名2,…,属性名n),如课程信息(课程编号,课程名称,课程类别,先修课程,学分)。

3.元组

一张二维表(一个关系)中的一行称为元组,一个元组对应一个实体,又称一条记录。

4.属性

一张二维表(一个关系)中的一列称为属性,即实体的属性。每列有一个名字即属性名,又称字段名。

5.域

一个属性的取值范围称为域。如性别的域为["男","女"]。

6.候选关键字

在一个关系中,能够唯一标识一个元组的属性或属性的组合称为候选关键字,简称关键字。一个关系中的候选关键字可能有多个,用户选用其中的一个作为主关键字,简称主键。如学生(学号,姓名,性别,身份证号)关系中,“学号”“身份证号”均为关键字,用户可选择其中的一个作为主键;成绩(学号,课程号,成绩)关系中,由“学号”“课程号”组合在一起作为关键字。

7.外部关键字

一个关系中的某个属性不是本关系的关键字,但却是另一个关系的关键字,则称该属性为外部关键字,简称外键。如成绩(学号,课程号,成绩)关系中,学号属性不是关键字,但却是学生(学号,姓名,性别,专业)关系的关键字,则称“学号”为成绩关系的外键。

8.主表从表

对以外键相关联的两张表,通常称以外键为主键的表为主表,称外键所在的表为从表。

9.关系模型的特点

关系模型有如下特点:(1)关系中不允许出现相同的元组,即不允许出现相同的行。(2)关系中不允许出现相同的属性,即属性名必须是唯一的。(3)关系中不考虑元组之间的顺序,即行的顺序可以任意交换。(4)元组中的属性也是无序的,即列的顺序也可以任意交换。(5)关系中的每个属性值都是不可分解的数据项。1.3.2 关系运算

对关系数据库进行查询操作时,要找到满足用户需要的数据,就必须对关系进行相应的关系运算。关系运算有两类:一类是传统的集合运算,另一类是专门的关系运算。

1.传统的集合运算

传统的集合运算主要有:并、差、交、笛卡儿积4种。其中并、差、交要求运算对象必须是两个关系模式完全相同的关系,即两张具有相同结构的表,两张表的属性都完全相同。如关系R(见表1.2)、关系S(见表1.3)。表1.2 关系R表1.3 关系S

1)并运算

对上述具有相同关系模式的两个关系R、S进行并运算的结果为:先将R、S两个关系合并成一个关系,再去掉关系中相同的元组,记为R∪S。结果如表1.4所示。表1.4 R∪S

2)交运算

对上述具有相同关系模式的两个关系R、S进行交运算的结果为:将既属于关系R又属于关系S的元组存放到一个关系中,记为R∩S。结果如表1.5所示。

3)差运算

对上述具有相同关系模式的两个关系R、S进行差运算的结果为:将属于关系R但不属于关系S的元组存放到一个关系中,记为R-S。结果如表1.6所示。表1.5 R∩S表1.6 R-S

4)笛卡儿积

对两个关系进行笛卡儿积运算时,不要求它们具有相同的关系模式。对于关系M(有a个属性m个元组)、N(有b个属性n个元组),进行笛卡儿积运算的结果为:由(m×n)个元组构成,每个元组有(a+b)个属性,每个元组的前a个属性值来自关系M的一个元组,后b个属性值来自关系N的一个元组,记为M×N。如表1.7~表1.9所示。表1.7 关系M表1.8 关系N表1.9 M×N续表

2.专门的关系运算

专门的关系运算主要有:选择、投影、连接、除4种。其中选择、投影只有一个运算对象,连接、除则需要两个运算对象,并且需是两个关系模式不完全相同的关系。

1)选择

选择运算是按照某个逻辑条件(F)对关系(R)中的元组进行F选择,选出满足条件的元组作为运算结果,记为σ (R)。如在关系R中查询性别为“男”的学生,结果如表1.10所示。

2)投影ijk)

投影运算是从关系(R)中挑选若干属性(A ,A ,…,A 组成一个新的关系,如果新关系中包含重复元组,则要删除重复元组,Ai,Aj,…,Ak记为π (R)。如在关系R中查询学生的学号、姓名,结果如表1.11所示。性别="男"表1.10 σ (R)姓名,性别表1.11 π (R)

3)连接

连接运算是从两个关系的笛卡儿积中选取属性值满足连接条件的iθj元组,记为,也可记为σ (G×K)。其中i为关系G的一个属性,j为关系K的一个属性,θ为比较符,可以是:>、<、≥、≤、=、≠。iθj为连接条件,即在G和K的笛卡儿积中,选择G的i属性值与K的j属性值满足θ条件的元组。对关系G(见表1.12)、K(见表1.13)进行连接条件为G.B>K.C的连接运算的结果如表1.15所示,即在G、K的笛卡儿积(见表1.14)中选择满足条件G.B>K.C的元组。

在连接运算中有两种最为重要的连接:等值连接和自然连接。(1)等值连接。当θ为“=”时的连接操作称为等值连接,等值连接运算是从G×K中选取G的i属性与K的j属性值相等的元组。对关系G、K进行连接条件为A=D的等值连接运算的结果如表1.16所示,即在G、K的笛卡儿积中选择满足条件A=D的元组。(2)自然连接。自然连接是一种特殊的等值连接,要求从G×K中选取G与K都具有的属性做等值连接,最后通过投影运算去掉重复的属性。对关系G、K进行自然连接运算的结果如表1.17所示,即在G、K的笛卡儿积中选择关系G的B、C属性与关系K的B、C均对应相等的元组,即G.B=K.B并且G.C=K.C,再去掉重复的属性,两个关系的B、C字段重复,需去掉一组。

自然连接是最常用的连接运算。表1.12 关系G表1.13 关系K表1.14 G×KG.B>K.C表1.15 σ (G×K)A=D表1.16 σ (G×K)表1.17 G、K的自然连接运算

4)除

除运算是笛卡儿积的逆运算。设被除关系T为m元关系,除关系E为n元关系,那么它们的商为m-n元关系,记为T÷E。商的构成原则是:将被除关系T中的m-n列,按其值分成若干组,检查每一组的n列值的集合是否包含除关系E,若包含则取m-n列的值作为商的一个元组,否则不取。对关系T(见表1.18)、E(见表1.19)进行除运算的结果如表1.22所示,对关系T、W(见表1.20)进行除运算的结果如表1.23所示,对关系T、V(见表1.21)进行除运算的结果如表1.24所示。表1.18 关系T表1.19 关系E表1.20 关系W表1.21 关系V表1.22 T÷E表1.23 T÷W

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载