首页 > 技术文章 > Access数据库简介

zzw19940404 2020-12-02 22:38 原文

一、Access数据库的简介

1.microsoft office access是由微软发布的关联式数据库管理系统。它结合了 microsoft jet database engine 和 图形用户界面两项特点,是一种关系数据库工具。它在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的web应用程序.   

但是它也有优点和缺点,如下:

优点:                                                                 

(1)存储方式单一    

access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。

(2)面向对象 

access是一个面向对象的开发工具。它将一个应用系统当作是由一系列对象组成的,通过对象的方法、属性完成数据库的操作和管理,极大地简化了开发工作。同时,这种基于面

向对象的开发方式,使得开发应用程序更为简便。

(3)界面友好、易操作  

(4)  access是一个可视化工具,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、

查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。

(5)access可以在一个数据表中嵌入位图、声音、excel表格、word文档,还可以建立动态的数据库报表和窗体等。access还可以将程序应用于网络,并与网络上的动态数据相联接,轻松生成网页。

 缺点:

 access是小型数据库,既然是小型就有它根本的局限性:access数据库不支持并发处理、数据库易被下载存在安全隐患、数据存储量相对较小等。而且在以下几种情况下数据库基本上会吃不消:                                                                 

(1)数据库过大,一般access数据库达到50m左右的时候性能会急剧下降。

(2)网站访问频繁,经常达到100人左右的在线。

(3)记录数过多,一般记录数达到10万条左右的时候性能就会急剧下降。 

二、对一些基本知识的体会  

 1 字段数据类型                                                                 

学习了access的数据类型,发现计算机软件对数据的处理和管理是很严格的。access数据表里面的数据字段,是规定好字段类型的,比如说文本型的、数值型的、是否型的或日期型的?一旦设置好了字段的数据类型,那么,在该字段中的所有单元格是不能随便输入内容的,如果输入的内容不符合字段数据类型,是输不进去的。比如,日期型的数据,你输入汉字,是不能输入的,而只能输入诸如:2009-9-29这样格式的数据。这就是字段的数据类型的约束性,可以说,是一种强制性;显然,约束性带来了数据管理的方便,解决了数据的分类与管理上的方便。

2 数据的查询   

access里面的查询,不会对源数据表的数据造成影响。这是很好的一种分离模式;我们可以根据自己的查询,设置或构造简单的或复杂的查询条件,之后运用查询,就可以查询到所需要的数据的,但是,查询到的数据,对源数据表,即原始数据,不会造成任何的影响,这就带来了如下的方便:即能找到所需数据,同时,又保留了原始数据的完整性。 另外,查询对象,还支持sql语言的使用,这就从根本上解决了数据查询的难度,提高了灵活性和使用性。

3 窗体的使用

   原来我对软件界面很好奇,不知道这样的界面,是如何制作出来的。学习了access之后,才知道,这种界面,其实就是一种窗体。窗体对象,可以这样简单的来概述:用来显示数据表数据的有别于查询的一种界面。窗体对象中的用来显示数据的控件,我们可以灵活的自行

设计,想拖哪个表的哪个字段到窗体里面,窗体就显示哪种数据,非常方便。

 4 关系                                                                 

     access里面的数据表与数据表之间,有着关系这个概念。关系,其实就是两表或多表,相互之间存在的一种关联或依赖。

比如说,学生信息表,有id和姓名字段;而学生成绩表,有id、学科、语文、数学、英语、信息技术等学科的成绩;后者保存学生每年每学期不同学科的成绩。这样一来,在学生成绩表里面对应于一个同学的记录,就有多条;而在学生信息表中,仅有一条记录。那么,我们要知道该同学的姓名,同时还要查询与之相对应的成绩,只有通过两表的操作,才能找到数据。若要表明某个id的号码所对应的成绩是属于哪个学生,就要使用到表间关系。通过将学生信息表里面的id和学生成绩表里面的id,建立起关系,或者称为以此来穿针引线,那么两表就存在关联了。这样就可以根据信息表里面的id,以它作为参照对象去寻找学生成绩表里面id号相同的,就为该学生的成绩记录了。

  三、具体使用中的一个问题  

在学习access的过程中,我发现使用高级筛选和查询这两个功能,都可以按照所选择的字段,设置条件或准则,查找满足一定条件的数据。但是两者有什么区别呢?后来上网搜索

了一下,然后进行实践,得出了答案。

 ①根本的区别 

 查询是access数据库中的一个对象,可以进行保存,永久使用;而高级筛选,仅仅是用来对数据库表数据进行临时的查找,一旦关闭了,筛选就已经不存在了。

②对数据查找的区别                                                                 

 高级筛选,只存在字段、排序、条件、或这样的选项的设置,无论条件如何复杂或再怎么简单,查找出来的数据,都包含数据表中的所有字段。而查询对象,除了上述的选项可设置之外,还有表和显示两个选项可以设置;这就说明了查询对象可以对多个表同时进行查询,查询出多个表中满足条件的记录,在这里,可以称为,查询能对多表进行综合的查询,而高级筛选只能对一个表的数据进行查找。此外,查询中还有“显示”这样的选项,当我们选择一个字段之后,可以将该字段设置为显示或不显示,这样,在查询出来的数据的浏览状态,就可以根据需要,显示部分字段而忽略部分字段。 另外,筛选只有在数据表打开的情况下才能使用;而查询,由于是一个数据库中的对象,需要新建,同时还需要选择数据源,即数据表。  

  ③两者的关联

 高级筛选的操作方法,和查询,在使用上类似;但是,由于前者仅有临时功能,而不具备永久保存的功能,因此,不能不说是一种遗憾;但是,我们也可以将设置好条件的高级筛选,保存成为查询,操作方法就是:“文件”→“另存为查询”;这样,就可以将筛选保存成为查询对象了。

 ④两者对数据库表的影响  

 查询对数据表的原始状态没有任何影响;查询的结果及保存,不会对数据表里面的数据字段或记录排序有任何影响。而高级筛选则会对数据库表原始数据的排序有所影响;如果在筛选中使用了排序,并且,在关闭筛选的时候,选择了“是”,那么,筛选出来的数据的排序,将会改变数据库表原始数据的排序。

四、 数据与数据处理

1、信息与数据:信息是数据包含的意义,数据是负载信息的符号。
2、信息的特征:
a、可以被感知;
b、获取和传递需要载体和能量;
c、通过载体进行存储、压缩、加工、传递、共享、扩散、再生和增值。
3、数据处理:对数据进行收集、存储,检索、加工、变换、传播等活动的总和。

五、 数据库

1、定义:长期存储在计算机内的、有组织的、可共享的、统一管理的相关数据的集合。
2、设计数据库需要考虑的因素:存取、共享。
3、发展历程:磁带->磁盘->关系模型->并行、分布式、面向对象数据库->决策支持、查询->高速度、高可靠性

六、 数据库系统

1、数据库系统组成:数据、用户、硬件、软件。
2、数据库中的数据是“集成的”、“共享的”;集成:数据结构化且数据冗余小;共享:数据库的“集成”。
3、用户:终端用户、应用程序员、数据库管理员
4、硬件:各类外存储器及其附属设备、控制器、I/O通道、内存、CPU以及外部设备。
5、软件:负责存取、维护和管理的软件系统,通常叫数据库管理系统(DBMS)。
6、数据库系统的特点:数据冗余低、共享性高;数据独立性高(逻辑独立性、物理独立性);统一的数据控制功能(数据安全性、数据完整性、并发性、数据恢复)。

七、数据库管理系统(DBMS)

1、概述:负责对数据库的存储进行管理、维护、使用,是数据库的核心组成部分,用户在数据库的一切操作都是通过DNMS完成。
2、功能:数据库定义、数据存取、数据库运行管理、数据库的建立和维护、数据通信。
3、组成:语言编译处理程序、系统运行控制程序、系统建立、维护程序、事务运行管理、数据字典。

八、数据库应用系统(DBAS)

1、概述:在DBMS的基础上,针对一个实际问题面向用户的系统。
2、组成:数据库、数据管理系统、数据管理员、硬件平台、软件平台、应用软件和应用界面。

九、 数据库系统的体系结构

1、数据库系统的体系结构受计算机系统(联网、并行、分布)的影响。
2、联网:客户和服务器划分任务,产生了客户-服务器数据库系统。
3、并行:加快处理速度,产生了并行数据库系统。
4、分布:在不同站点保存多个数据库副本,防止某个站点被破坏后数据库的正常运行。分布式数据库系统用来处理地理上或管理上分布在多个数据库的数据。

十、集中式体系结构

1.运行在一台计算机上、不与其他计算机系统交互的数据库系统。

2.客户-服务器结构

数据库存放在服务器中,应用程序根据需要安排在服务器或客户机上,实现了客户端程序和服务器程序的协同工作。

3.并行系统结构

1)、并行的使用多个CPU和磁盘来提高处理速度和I/O速度。
2)、并行结构模式:共享内存;共享磁盘;无共享;层次共享。

4.分布式结构

1)、数据库存储在几台计算机(不共享主存或磁盘)中,计算机之间通过通信介质通信。
2)、与无共享并行结构数据库的区别:分布式通常地理上分开、分别管理;(主要区别)分布式系统将事务区分为局部事务(访问自己)和全局事务(访问其他)。
3)、分布式系统的优势:共享数据(站点间可以互相访问)、自治性(对局部数据有一定控制)、可用性(防止故障)。

5. 数据模型

1)、数据的抽象过程:现实世界->信息世界->数据世界
2)、在信息世界中建立概念模型,在数据模型中建立逻辑数据模型。

6. 概念模型

基本术语:实体与实体集(对象),属性(描述),关键字和域(唯一标识),联系(内部和外部)。

7. E-R方法表示概念模型

表现规则
a、矩形:实体;
b、椭圆:属性;
c、菱形:实体间的联系,联系也可以有属性;
d、线段:连接属性和实体,连接联系和实体;
e、双椭圆:多值属性;
f、虚椭圆:派生属性;
g、双线:实体全部参与到联系集中;
h、双矩形:弱实体集。

8.逻辑数据模型

1、当前流行的3中逻辑数据模型:层次模型(树),网状结构(图),关系模型(表)。
2、层次模型的优缺点:便于表示实体集内部的实体间联系;不便于两个以上实体集之间多对多的联系。
3、网状模型的优缺点:本质上与层次结构一样。
4、关系模型的优缺点:结构灵活,满足运算规则形成的查询,能搜索、组合比较不同类型的数据,增删方便。

9. 关系数据库

基本术语:
a、关系:一个关系就是一个二维表。
b、元组:二维表中的行,构成关系的实体。
c、属性:二维表中的列,又称为字段。
d、域:属性的取值范围。
e、分量:元组中的一个属性,不可再分(表中表)。
f、关系模式:对关系的描述,如:关系名(属性1,属性2,……,属性n)。
g、候选关键字:属性集合为唯一标识。
h、关系数据库:一个关系模型的所有关系的集合。
i、主关键字:候选关键字中选一个作为主关键字,也称主键。
j、外关键字:属性不是所在关系的关键字,也称外键。
k、主属性:候选关键字中的属性成为主属性。

10. 表之间的关系

通过外关键字实现表与表之间的联系,公共字段是一个表的主键和另一个表的外键。

11. 关系模型的完整性约束

1、实体完整性:主属性不能为空值。
2、参照完整性:属性a是关系A的外键,属性a又对应关系B的主键b,则a的值必须为b中的值或空值。
3、用户定义的完整性:用户自定义属性的约束条件,如:唯一性,取值范围等。

十一、关系代数

关系代数的种类:集合运算符,比较运算符,逻辑运算发,专门的关系运算符。

1. 集合运算

1)、并:取两个关系包含的所有元组(相同的只记录一次)。
2)、差:关系A-关系B=属于关系A但不属于关系B的元组组成的新关系。
3)、交:两个关系的交集。
4、(广义)笛卡尔积:关系A (n个元组)x 关系B (m个元组)= 关系A的每一个元组与关系B的每一个元组依次组合组成的关系(n x m个元组),与矩阵的点乘类似。

2.专门的关系运算

1)、选择:设定条件进行选择,条件可以使用比较运算符构成,多个条件可以使用逻辑运算符连接。
2)、投影:一个关系中取出若干指定字段(属性)的值称为投影。若投影有重复行,则取消相同的行。
3)、连接:把两个关系中的记录按照一定条件横向结合,生成新的关系。常利用两个关系的公用字段进行连接(称为自然连接),将两个关系进行笛卡尔积运算,去除重复属性列。
4)、除运算:关系R(X,Y)和S(Y,Z),R÷S=元组在X上的分量值x得象集Yx包含S在Y上的投影的集合。(象集:一类属性的一个分量对应另一类属性的一个或多个分量)。

十二、规范化理论

1.规范化:关系中所有字段不可分割,数据项不能含有多个值。
1)、第一范式 1NF:满足规范化最低的要求。
2)、第二范式 2NF:满足第一范式的前提下,所有的非主关键字完全依赖与主关键字。
3)、第三范式 3NF:满足第二范式的前提下,每个非关键字不传递依赖于主关键字。
4)、一般规范化到3NF就满足需要了,更高规范化的还有BCNF、4NF、5NF。

2. 数据库语言

1)、数据库系统提供两种不同类型的语言:数据定义语言、数据操纵语言。
2)、数据定义语言(DDL)用于定义数据库模式;数据操纵语言(DML)用于访问和操纵数据库中的数据(增删改查)。
3)、数据操纵语言分为过程化DML(指定数据和获取途径)和陈述式DML(只指定数据不提供获取途径)。陈述式更易学易用,数据库系统会指出一种访问数据的高效路径。

3. 数据库设计

概述:对具体的应用系统,设计优化的数据库逻辑模式和物理结构,并建立数据库和应用系统,使之有效的存储和管理数据,满足各种用户的信息管理要求(存储、管理)和数据操作要求(增删改查)。

4. 数据库设计的目标

为用户和各类应用系统提供一个信息基础设施和高效率(存取效率、空间利用率、运行管理效率)的运行环境。

5. 数据库设计的特点

1)、数据库建设的基本规则:三分技术,七分管理,十二分基础数据(最大、最繁琐、最细致的工作)。
2)、结构设计与行为设计相结合:就是将数据库的结构设计和数据的处理结合起来。

6.数据库设计的方法

1)、新奥尔良法:把数据库分为若干阶段和步骤,采用辅助手段实现每一过程(迭代和逐步求精)。有点程序设计的味道。
2)、基于E-R模型设计数据库。
3)、3NF设计法:用关系数据理论设计逻辑模型。
4)、ODL(Object Definition Language)方法:面向对象的数据库设计方法。

7. 数据库设计的步骤

1)、需求分析
a、需求分析是数据库设计的基础,最困难、最耗时。
b、重点在于调查、收集和分析用户在数据管理中的信息要求、处理数据、安全性和完整性要求。
c、调查方法:跟班作业、开调查会、请专人介绍、设计调查表(问卷)、查阅记录。
2)、概念结构设计:用E-R图进行描述。
3)、逻辑结构设计
a、将概念模型转化为逻辑模型(关系、网、层次)。
b、向特定的DBMS进行数据模型转化。
c、数据模型优化
d、设计用户子模式
4)、物理结构设计
a、确定数据库的物理结构
b、对物理结构进行评估:设计多个方案,从时间、空间、维护和用户要求进行权衡。
5)、数据库实施
a、定义数据库结构:根据逻辑结构和物理结构用大数据定义语言(DDL)来描述。
b、数据装载:筛选、转换格式、输入、校验。
c、编制与调试应用:使用模拟数据进行调试。。
d、数据库试运行:功能测试、性能测试。
6)、数据库运行和维护(主要由DBA完成)
a、数据的转储与恢复:定期对数据库和日志文件进行备份。
b、数据库的安全性和完整性控制:根据实际用户的需求设置不同操作权限(安全),由于应用环境的变化,数据库完整性也会变化,需要不断修改。
c、数据库性能的监督、分析和改进。
d、数据库的重组织和重构造:增删改查、垃圾回收,提高系统性能。

十三、总结                                                       

总结一下学习access的方法,主要有以下几点: 

1学习计划要明确,根据自己的实际出发。

2 从应用出发。学习的目的就是为了使用,应把学到的每一点应用于实际操作。

3要多了解相关信息,多思考,多提问题,多问几个为什么,要学以致用。

4利用网上资料的指导、帮助。

推荐阅读