第1章 数据库概述Word格式.docx
- 文档编号:17597500
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:30
- 大小:249.25KB
第1章 数据库概述Word格式.docx
《第1章 数据库概述Word格式.docx》由会员分享,可在线阅读,更多相关《第1章 数据库概述Word格式.docx(30页珍藏版)》请在冰豆网上搜索。
(2)提供了数据库操纵语言(DataManipulationLanguage,DML),实现对数据库和表中的数据进行检索、插入、修改和删除等基本操作。
(3)提供了核心控制程序,实现对数据库运行操作的统一管理,包括并发控制、存取控制(安全性检查)、完整性约束条件的检查和执行、数据库内部的维护(如索引、数据字典的自动维护)等。
(4)提供一组实用程序,完成数据库的建立和维护功能,包括初始数据的载入、转换功能,数据库的转储功能,数据库的性能监视、分析功能,数据通信功能等。
4.数据库系统
数据库系统(DataBaseSystem,DBS)是以计算机系统为基础,用数据库技术管理大量共享数据的综合系统。
它一般由计算机硬件系统、数据库、数据库管理系统(及其开发工具)、应用系统、
数据库管理员、应用程序员和用户构成。
其中数据库管理系统是数据库系统的管理控制中心,是核心软件。
5.数据库应用系统
数据库应用系统(DataBaseApplicationSystem,DBAS)实际上就是一个具体的数据库系统,因此对数据库应用系统和数据库系统通常不加以细分。
6.数据处理
数据处理是指对各种类型的数据进行收集、组织、加工、存储、传输等操作,其目的是将最原始的数据变成有用的数据,为进一步的活动决策提供依据。
数据管理是指对数据的组织、存储、检索和维护等操作,是数据处理的基本环节。
随着计算机技术的发展,数据处理过程发生了划时代的变革,而数据库技术的发展,又使数据处理跨入了一个崭新的阶段。
数据处理技术大致经历了人工管理、文件系统和数据库系统三个发展阶段。
(1)人工管理阶段
在人工管理阶段,数据处理的主要任务是数据量很少的科学计算,没有专门的软件对数据进行管理,在程序设计中,既要考虑程序的处理过程,又要考虑数据的定义和组织,程序和数据总是联系在一起。
人工管理阶段的特点是:
数据不保存,程序运行结束后数据就丢失;
数据由应用程序自己管理,没有相应的软件系统负责数据的管理工作;
数据不能共享,程序和数据是一个整体,一个程序中的数据无法被其它程序共享;
数据不具有独立性,一旦修改了数据的存储结构,则其程序也必须修改。
(2)文件系统阶段
在文件系统阶段,数据处理的主要任务是科学计算和简单的数据管理,有了专门管理数据的软件,即文件系统。
数据已经从程序中分离出来,组成相互独立的数据文件并能保存,程序和数据之间具备一定的独立性。
文件系统的特点是:
数据能长期保存,能进行反复的查询、修改、插入、删除操作;
由文件系统进行数据管理,程序和数据之间由软件提供的存取方法,如函数调用等方式进行转换,使数据和程序之间有了一定的独立性。
文件系统存在的不足是:
数据的冗余度大,不同的应用程序使用相同的数据时,就要建立不同的数据文件,而内容却是相同的;
数据的独立性差,数据的组织形式依赖于应用程序,相互有影响,不利于系统移植、系统扩充、系统维护等工作;
缺乏对数据的统一控制管理,数据的完整性和数据的安全性很难得到保证,各个数据文件需要有管理软件实施统一控制管理;
不支持对文件的并发访问(ConcurrentAccess)。
(3)数据库系统阶段
在数据库系统阶段,数据处理的主要任务是各种科学计算和大量的、复杂的数据管理,有了统一管理数据的专门软件系统,即数据库管理系统。
数据与程序已经完全独立,大大降低了数据的冗余度,实现了多用户、多应用的数据共享。
1.1.2数据库系统的基本特点
根据数据库系统的构成和数据应用的需要,数据库系统具有以下基本特点。
1.数据结构化
在数据库系统中,数据是按照特定的模型进行组织的,数据文件中记录的内容,不仅能描述数据本身,而且能表示数据之间的联系。
数据库系统实现整体数据的结构化,这种特征能够反映现实世界的数据联系,能适应大批量数据管理的客观需要。
2.数据共享、冗余度低
数据共享是数据库系统的目的,也是它的重要特点。
在数据库系统中,数据是面向整个系统的,可为所有访问系统的用户共享。
数据冗余是指各数据文件中有相互重复的数据。
从理论上讲,可以消除冗余,但实际上,常常允许部分冗余存在,以提高检索速度。
3.数据独立性高
在数据库系统中,数据库的建立独立于程序,数据库系统通过三级模式和两种映像功能,使数据具有物理独立性和逻辑独立性。
物理独立性是指当数据的存储结构(也称存储模式或内模式)改变时,通过映像,数据的逻辑结构(也称逻辑模式或模式)不变,从而不必修改应用程序。
逻辑独立性是指当数据的逻辑结构改变时,通过映像,数据的用户模式(也称子模式或外模式)不变,从而也不必修改应用程序。
4.数据库管理系统(DBMS)统一管理和控制
通过DBMS软件包统一管理数据,实现多用户的数据共享和并发操作,并确保数据的安全性和数据的完整性,包括数据库恢复的功能。
1.1.3数据模型
模型是对现实世界某个事物特征的模拟和抽象。
由于用计算机来研究处理现实世界的具体事物时,必须先把具体事物转换为抽象的模型,再转换为计算机可以处理的数据模型。
所以,数据模型是抽象、表示、处理现实世界中事物的基本工具。
1.信息的三个世界
信息的三个世界是指现实世界、信息世界、计算机世界。
现实世界是指客观存在的事物,它是信息之源,是设计和建立数据库的出发点,也是使用数据库的最后归宿。
信息世界,又称观念世界,是现实世界中的客观事物在人们头脑中的反映,客观事物在信息世界中称为实体,而反映事务间关系的称为实体模型或概念模型。
计算机世界是指信息世界中的信息数据转化成能被计算机处理的数据,又称数据世界。
实体模型在数据世界中以数据模型描述。
现实世界、信息世界和计算机世界这三个领域是由客观到认识、由认识到使用管理的三个不同层次,后一领域是前一领域的抽象描述。
现实世界的事物及联系,通过抽象成为信息世界的概念模型,而概念模型经过数据化处理转换为数据模型,其变化关系如图1-1所示。
图1-1三个世界的变化
2.概念模型
概念模型是数据库设计人员在认识现实世界中的实体及实体间联系后进行的一种抽象,是用户与数据库设计人员之间进行交流的语言。
它独立于任何数据库管理系统,但是又很容易向数据库管理系统支持的逻辑数据模型转换,数据模型是借助概念模型(或信息模型)转化而来的。
概念模型中涉及的一些概念有:
(1)实体:
客观存在并且可以相互区分的事物称为实体。
它可以指人,如一名教师、一个学生等,也可以指物,如一本书、一张桌子、一块黑板等,也可以指抽象的事件,如借书、奖励、交通法规等。
它还可以指事物与事物之间的联系,如学生选课、客户订货、顾客购物等。
(2)属性与属性值:
用于描述实体的特性称为实体的属性,比如:
职工实体用职工号、姓名、性别、出生日期等若干个属性描述。
属性的具体取值称为属性值,用于刻画一个实体,比如属性值的组合(10023,张红芳,女,1965-10-24)就描述了一个具体的职工。
每个属性的特定取值范围叫做值域,如性别的值域为(男,女)。
(3)实体型与实体值:
由上可见,属性值所组成的集合表征一个实体,相应的这些属性的集合表征了一种实体的类型,称为实体型。
例如:
(职工号、姓名、性别、出生日期等)表征职工实体的实体型。
实体值是指某个具体实体的取值,如(10023,张红芳,女,1965-10-24)就是一个实体值。
(4)实体集:
同种类型的实体的集合称为实体集。
全体记者就组成一个实体集。
在VisualFoxPro中,用“表”来表示同一类实体,即实体集,用“记录”来表示一个具体的实体,用“字段”来表示实体的属性,表的结构对应于实体型。
(5)码:
在众多属性中能够唯一标识或确定一个实体的属性或属性组称为实体的码。
比如学生实体的码应当是“学号”。
(6)联系:
联系是指反映现实世界事物之间的相互关系。
一个实体内部各属性之间的相互联系称为实体的内部联系。
各实体集之间的相互联系称为实体的外部联系。
这些联系可以分为一对一、一对多、多对多三种类型。
1一对一联系(记作1:
1):
一个实体集中的每一个实体,在另一个实体集中最多只能找到一个可以与它相对应的实体,反之亦然,我们称这两个实体集之间存在着一对一的联系。
比如一个企业只有一位总经理,并且一位总经理只能管理一个企业,所以企业实体集和总经理实体集之间就是一对一联系。
2一对多联系(记作1:
n):
一个实体集X中的每一个实体,在另一个实体集Y中能够找到多个可以与它相对应的实体,反之,在另一个实体集Y中的每一个实体,却只能在实体集X中找到一个可以与它相对应的实体,我们称这两个实体集之间存在着一对多的联系。
比如一个企业有许多职工,但每一个职工只能工作(含人事关系)在一个企业,所以企业实体集和职工实体集之间就是一对多联系。
3多对多联系(记作m:
一个实体集X中的每一个实体,在另一个实体集Y中能够找到多个可以与它相对应的实体,反之,在另一个实体集Y中的每一个实体,也能在实体集X中找到多个可以与它相对应的实体,我们称这两个实体集之间存在着多对多的联系。
比如一个学生可以选修多门课程,而每一门课程可以被多个学生选修,所以学生实体集和课程实体集之间就是多对多联系。
描述概念模型的方法有很多,其中最常用的是实体-联系方法(Entity-RelationshipApproach),简称E-R方法。
E-R方法的规则是:
用长方形表示实体,并在框内写上实体名;
用椭圆表示实体属性,并用无向边即直线把实体与其属性连接起来;
用菱形表示实体间的联系,菱形框内写上联系名;
用无向边把菱形分别与相关的实体相连接,在无向边旁标上联系的类型(1:
1、1:
n、m:
n)。
若实体之间的联系也具有属性,则把属性和菱形也用无向边连接上。
上述三种联系的简单E-R方法表示如图1-2所示。
图1-2一对一、一对多、多对多联系
3.逻辑数据模型
逻辑数据模型是数据库系统的核心和基础,它描述了数据库中数据的整体结构。
逻辑数据模型通常由数据结构、数据操作、数据完整性约束三部分组成,其中数据结构是对系统静态特性的描述,是逻辑数据模型中最重要的部分,因此人们一般以逻辑数据结构的类型来命名该数据模型。
由于采用的数据模型不同,相应的数据库管理系统也就完全不同。
在数据库系统中,常用的数据模型有:
层次模型、网状模型、关系模型。
(1)层次模型:
层次模型是用倒置的树形结构来表示实体及其之间的联系。
在这种模型中,数据结构从树根开始向树枝、树叶逐层展开,树中的每一个结点代表一个实体,连线则表示它们之间的关系。
层次模型的特点是:
有一个结点没有父结点,这个结点称为根结点;
其他结点有且仅有一个父结点。
一个小工厂的层次模型如图1-3所示。
图1-3工厂的层次模型
(2)网状模型:
网状模型是用实体为结点的图来表示各实体及其之间的联系,它可以表示数据间的纵向关系和横向关系,呈现出一种交叉联系的网络结构。
网状模型的特点是:
可以有一个以上的结点无父结点;
至少有一个结点有多个父结点。
一个学校的简单的网状模型如图1-4所示。
图1-4教学的网状模型
(3)关系模型:
关系模型是用二维表格来表示实体及其相互之间的联系。
在关系模型中,把实体集看成一张二维表,通过相同关键字段实现表格间的数据联系。
每一张二维表称为一个关系,每个关系均有一个名字即关系名。
关系模型是目前比较流行的一种数据模型,比如学生的课程学分情况如表1-1所示。
表1-1课程学分表
课程号
课程名
学时数
学分
0001
大学英语
80
4
0002
日语
60
3
0003
计算机应用基础
64
0004
C语言程序设计
0005
数据库系统
0006
高等数学
0007
概率论
40
2
0008
会计学
0009
西方经济学
0010
人力资源管理基础
4.物理数据模型
物理数据模型是用来描述数据的物理存储结构和存储方法,它与计算机存储器和操作系统密切相关,一般用户在数据库设计时不需要过多地考虑物理结构,数据库管理系统会自动地加以处理。
1.1.4VisualFoxPro数据库管理系统
在数据库中,如果数据结构按照层次模型定义,则该数据库为层次数据库;
如果数据结构按照网状模型定义,则该数据库为网状数据库;
如果数据结构按照关系模型定义,则该数据库为关系数据库。
VisualFoxPro数据库管理系统是一种关系数据库管理系统,它能让用户以最有效的方式管理和处理大量的数据,实现数据的增加、修改、查询、删除操作,制作报表和标签,快速自行开发一个简单的应用系统。
关系数据库系统是由许多不同的关系构成,其中的每一个关系就是一个实体,可以用一张二维表来表示。
1.基本的关系术语
(1)关系:
关系是指一张二维表,由行和列组成。
每个关系都有一个关系名,并以表文件的形式保存,其扩展名为.dbf。
(2)属性:
属性是指一张二维表中的每一列,属性有属性名和属性值。
在VisualFoxPro中,一个属性对应表文件中的一个字段,属性名对应字段名,属性值对应表文件中各个记录的字段值。
(3)元组:
元组是指一张二维表中的每一行的属性值。
在VisualFoxPro中,一个元组对应表文件中的一条记录(记录值)。
(4)框架:
框架是指由属性名组成的表头。
在VisualFoxPro中,框架对应表文件中的表的结构。
(5)域:
域是指每个属性的取值范围。
(6)关键字:
关键字是指具有唯一确定一个元组的属性或属性组。
比如学生的“学号”属性。
一个关系中关键字可以有多个。
(7)主关键字:
主关键字是指当前被指定的那个关键字,并且其属性值不能取“空值”。
(8)外部关键字:
外部关键字是指一张二维表中的某个属性或属性组虽然不是所在表的关键字,但却是另一张二维表的关键字。
(9)关系模式:
关系模式是指对关系的描述,可表示成:
关系名(属性1,属性2,属性3,……,属性n)。
比如,课程(课程号,课程名,学时数,学分)。
2.关系的基本特点
在关系模型中,每个关系都必须满足一定的要求,其基本特点是:
关系必须规范化,属性不可再分割;
在同一关系中不允许出现相同的属性名;
在同一关系中不允许有完全相同的元组;
在同一关系中各行、各列的顺序是任意的;
每一列必须具有相同的数据类型。
3.关系的基本运算
关系数据模型的理论基础是集合论,从集合的角度讲,可以进行集合的并、交、差运算;
从关系(表)的角度讲,关系的基本运算有选择、投影、连接。
(1)选择:
选择运算是指从关系表中查找出符合指定条件的元组。
它是对表的一种横向操作,其运算结果是关系中的部分元组并构成关系的一个子集,其关系模式不变。
比如,从课程表中选取学时数是80的记录。
(2)投影:
投影运算是指从关系表中选取若干个属性,从而形成一个新的关系表。
新关系表是原关系表的子集,投影是对表的一种纵向操作。
例如,从课程表中对课程号、课程名、学分三个属性进行投影。
(3)连接:
连接运算是指从两个关系表中找出满足连接条件的所有元组,并且拼接成一个新的关系表。
在VisualFoxPro中,连接运算是通过JOIN命令和SELECT等SQL命令来实现的。
1.2VisualFoxPro系统简介
数据库理论的研究在七十年代后期进入较为成熟的阶段,随着八十年代初IBM/PC及其兼容机的广泛使用,数据库产品的代表作之一,Ashton-Tate公司开发的dBASE很快进入微机世界,成为一个相当普遍而且受欢迎的数据库管理系统。
继dBASEII之后,dBASEIII,dBASEIIIPlus以及dBASEIV相继诞生,其功能逐渐增强。
1984年,FoxSoftware公司推出了与dBASE全兼容的FoxBASE,其速度大大快于dBASE,并且在FoxBASE中第一次引入了编译器。
1986年,与dBASEIII
Plus兼容的FoxBASE+推出后不久,FoxPro/LAN也投入市场,一时间引起轰动。
1987年之后相继推出了FoxBASE+2.0和2.10,这两个产品不仅速度上超越其前期产品,而且还扩充了对开发者极其有用的语言,并提供了良好的界面和较为丰富的工具。
1989年下半年,FoxPro1.0正式推出,它是一个与dBASE、FoxBASE全兼容的编译型集成环境式的数据库系统。
1991年,FoxPro2.0推出。
由于使用了Rushmore查询优化技术、先进的关系查询与报表技术以及整套第四代语言工具,FoxPro2.0在性能上大幅度地提高了。
1992年微软收购了Fox公司,把FoxPro纳入自己的产品中。
它利用自身的技术优势和巨大的资源,在不长的时间里开发出FoxPro2.5、FoxPro2.6等大约20个软件产品及其相关产品,包括DOS、Windows、Mac和UNIX四个平台的软件产品。
1995年6月,微软推出了VisualFoxPro3.0版。
接着又很快推出VisualFoxPro5.0及其中文版。
1998年发布了可视化编程语言集成包Visual
Stadio6.0,VisualFoxPro6.0(中文版,简称VFP6.0)就是其中的一员。
2002年微软公司推出了VisualStudio.NET7.0,VisualFoxPro7.0β版(测试版)是其中的成员,但其后发布的VisualStudio.NET7.0正式版不包含VisualFoxPro7.0。
2003年2月1日微软公司推出VisualFoxPro8.0,之后又推出VisualFoxPro9.0。
VisualFoxPro6.0是可运行于Windows95/98/2000、WindowsNT等平台的32位数据库开发系统,它将面向对象的程序设计技术与关系型数据库系统有机地结合在一起,是具有更强大功能的可视化程序设计的关系数据库系统。
VisualFoxPro6.0集数据库和程序设计语言于一体,可以设计许多小型数据库系统。
1.2.1VisualFoxPro的基本特点
在VisualFoxPro5.0的基础上,VisualFoxPro6.0更加重了项目管理器、向导、生成器、查询与视图、OLE连接、Active集成、帮助系统制作、数据的导入和导出以及面向对象的程序设计等方面的技术力度。
VisualFoxPro6.0与Windows98/2000操作系统以及Office办公软件都可以很好地交流,可以制作出更加专业化的软件。
它在客户/服务器应用技术、远程数据共享、数据安全管理及文档管理等方面,具有很强的优势,非常适合于制作各种数据库应用程序。
其基本特点有:
1.具有真正意义的数据库
在以前的FoxPro中,数据库文件就是一个表文件(.dbf),而在VisualFoxPro中,将数据库文件改称为表文件,数据库中可包含表、视图、关联、存储过程、规则、缺省值、触发器等。
2.增强的项目及数据管理
VisualFoxPro中的项目管理器,可让用户对项目中的数据、文档、类、代码等资源进行集中管理,提高了项目的开发与维护效率。
对数据的管理是指可以对表的默认值、字段的有效性规则、记录的有效性规则等进行设置,以提高数据的一致性。
3.完整的可视化设计工具
VisualFoxPro提供了向导(Wizard)、设计器(Designer)和生成器(Builder)三种可视化设计工具,用户通过这些工具只要进行简单的操作,就能快速完成各种查询和设计任务。
4.具有SQL语言的部分功能
SQL语言是由IBM公司开发的关系数据库语言,其查询语句功能强大,使用灵活。
在VisualFoxPro中,也能使用SQL语言的部分命令。
5.面向对象的程序设计
VisualFoxPro不仅具有传统的面向过程的程序设计,而且还具有面向对象的程序设计功能。
用户可以用“对象”(Object)和“类”(Class)进行设计,编写相应的代码等。
6.更安全、有效的网络数据共享
VisualFoxPro中创建的视图和表单,可以安全、有效地访问和更新网络中的数据。
7.增强了OLE与ActiveX的集成
VisualFoxPro支持OLE与ActiveX的集成,用户可在表单中使用这些控件。
8.高效的调试器
VisualFoxPro改进了程序调试工具,使程序的调试更加容易和方便。
1.2.2VisualFoxPro的启动和退出
VisualFoxPro的启动和退出有多种方法,下面介绍几种常用的方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第1章 数据库概述 数据库 概述