第 1 章 Visual FoxPro系统概述
数据库基本概念 数据库系统 Visual FoxPro数据库管理系统 本章内容 数据库基本概念 数据库系统 Visual FoxPro数据库管理系统
1.1 数据库基本概念 1.1.1 信息、数据 1.1.2 数据处理 1.1.3 数学模型 1.1.4 关系模型 1.1.5 数据库 1.1.6 关系数据库 1.1.7 关系模型的规范化原则
1.1.1 信息、数据 1.1 数据库基本概念 1.信息 信息(information)是客观事物属性的反映。它所反映的是某一客观系统中,某一事物的某一方面属性或某一时刻的表现形式。通俗地讲,信息是经过加工处理并对人类客观行为产生影响的数据表现形式。 信息是人们在进行社会活动、经济活动及生产活动时的产物,并用以参与、指导其活动过程。信息是有价值的,信息是可以感知的。信息可以通过载体传递,信息可以通过信息处理工具进行存储、加工、传播、再生和增值。 在信息社会中,信息一般可与物质和能量相提并论,它是一种重要的资源。
1.1.1 信息、数据 1.1 数据库基本概念 2. 数据 数据(data)是反映客观事物属性的记录,是信息的载体。对客观事物属性的记录是用一定的符号来表达的,因此数据是信息的具体表现形式。数据所反映的事物属性是它的内容,而符号是它的形式。 数据表现信息的形式可以是多种多样的,不仅有数字、文字符号,还可以有图形、图像和声音等。用数据记录同一信息可以有不同的形式,信息不会随着数据形式的不同而改变其内容和价值。 总之,信息是有用的数据,数据是信息的表现形式。信息是通过数据符号来传播的,数据如不具有知识性和有用性则不能称其为信息。
1.1.2 数据处理 1.1 数据库基本概念 所谓数据处理实际上就是利用计算机对各种类型的数据进行处理。数据处理也称为信息处理。它包括对数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作。 数据处理的目的是从大量的、原始的数据中获得所需要的资料并提取有用的数据成分,作为行为和决策的依据。 随着电子计算机软件和硬件技术的发展,数据处理过程发生了划时代的变革,而数据库技术的发展,又使数据处理跨入了一个崭新的阶段。 数据的管理技术的发展3个阶段: (1)人工管理 (2)文件管理 (3)数据库系统管理
1、人工管理阶段: (50年代中期以前) 背景: 应用:科学计算。 硬件:无直接存取存储器。纸带、磁带。 软件:无操作系统。 处理方式:批处理。
特点: 数据的管理者:用户(程序员)。 数据面向的对象;某一应用程序。 数据的共享程度:无共享,冗余度极大。 数据的独立性:不独立,依赖于程序。 数据的结构化:无结构。 数据控制能力:应用程序自己控制。
2、文件系统管理阶段(50年代后期~60年代中期) 背景: 应用:科学计算和管理。 硬件:磁盘、磁鼓。 软件:有文件系统。 处理方式:批处理、联机实时处理。
特点: 数据的管理者:文件系统。 数据面向的对象;某一应用。 数据的共享程度:共享性差,冗余度大。 数据的独立性:独立性差。 数据的结构化:记录内有结构、整体无结构。 数据控制能力:应用程序自己控制。
3、数据库系统管理阶段(60年代后期) 背景: 应用:大规模管理。 硬件:大容量磁盘。 软件:有数据库管理系统。 处理方式:联机实时处理、分布处理、批处理。
特点: 数据的管理者:数据库管理系统。 数据面向的对象;现实世界。 数据的共享程度:共享性高,冗余度小。 数据的独立性:具有高度的物理独立性和逻辑 独立性。 数据的结构化:整体结构化,用数学模型描述。 数据控制能力:由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。
1.1.3 数学模型 1.1 数据库基本概念 现实世界中的客观事物是相互联系的。一方面,某一事物内部的诸因素和诸属性根据一定的组织原则相互具有联系,构成一个相对独立的系统;另一方面,某一事物同时也作为一个更大系统的一个因素或一种属性而存在,并与系统的其他因素或属性发生联系。 客观事物的这种普遍联系性决定了作为事物属性记录符号的数据与数据之间也存在着一定的联系性。具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数学模型。 常用的数学模型有层次模型、网状模型、关系模型及面向对象模型。
层次模型 层次模型是用树形结构来表示实体之间的联系模型。倒向树以结点与连线组成,结点表示实体,连线表示相连两实体之间的联系。 根结点 父结点 子结点
网络模型 在网络模型中,每一个结点都可以与其它任一结点建立联系。
关系数据模型 学生选修课程关系 学生 课程 王岗 哲学 林芳 英语 计算机 孙维 数学 用二维表格数据来表示实体之间的联系模型,称为关系模型。一个二维表对应一个关系。 学生选修课程关系 学生 课程 王岗 哲学 林芳 英语 计算机 孙维 数学
1.1.4 关系模型 例如有一组数据如下: 1, 甲, 女,20岁 2, 乙, 男,18岁 3, 丙, 女,21岁 4, 丁, 男,20岁 1.1 数据库基本概念 关系模型(relational model)是用二维表的逻辑结构来表示数据及数据之间的联系。关系模型的所谓“关系”是特指那种虽具有相关性,而非从属性的平行的数据之间按照某种序列排列的集合关系。 例如有一组数据如下: 1, 甲, 女,20岁 2, 乙, 男,18岁 3, 丙, 女,21岁 4, 丁, 男,20岁
1.1.4 关系模型 1.1 数据库基本概念 表格中的每一横行称为一个记录(record)。 记录用来表示关系模型中若干平行的、相对独立的个体事物的属性(attribute). 每一记录由若干数据项组成。 表格中的每一竖列称为一个字段(field)。 字段是表示关系模型中全部数据项按某种属性区分出来的类型,每一字段由若干按照某种界域划分的相同类型的数据项组成,竖向列出其诸种属性类型。一般在表格的第一行(即每一列的最上面)标示属性类型的名称,也称为字段名。 从总体上说,以竖向的数据属性分类的若干个记录的集合,构成一个关系模型,或称为一个关系(relation)。
1.1.5 数据库 通俗地讲,数据库就是有条理、有组织、合理地存放大量数据的“数据仓库”。数据库的性质是由其支持的数学模型所决定的。 1.1 数据库基本概念 数据库(database)是以一定的组织方式将相关的数据组织在一存放在计算机外存储器上,并能为多个用户共享的、与应用程序彼此独立的一组相关数据的集合。 通俗地讲,数据库就是有条理、有组织、合理地存放大量数据的“数据仓库”。数据库的性质是由其支持的数学模型所决定的。 Visual FoxPro数据库管理系统所创造的数据库,是依照关系模型进行数据存储的,因此称其数据库为关系数据库。
1.1.6 关系数据库 1.1 数据库基本概念 关系数据库(relational database)是若干个依照关系模型设计的若干关系的集合。也就是说,关系数据库是由若干张完成关系模型设计的二维表组成的。 一个“关系”(一张二维表)称为一个数据表文件(简称数据表)。数据表是由数据及数据结构组成的。对数据结构的描述,形成了数据表的框架,而数据则是按照数据结构填充的有着关系排列的数据项,它是数据表的内容。 一个关系数据库由若干个数据表组成,一个数据表又由若干个记录组成,而每一个记录则由若干个以字段属性加以分类的数据项组成。
1.1.6 关系数据库 1.1 数据库基本概念 关系数据库有以下主要特点: (1) 关系数据库以面向系统的观点组织数据,使数据具有最小的冗余度,支持复杂的数据结构。 (2) 关系数据库具有高度的数据和程序的相互独立性,使应用程序与数据的逻辑结构和数据的物理存储方式无关。 (3) 关系数据库中的数据由于具有共享性,使其能为多个用户服务。 (4) 关系数据库允许多个用户访问数据库中的数据,同时提供了各种控制功能,保证数据获得安全性、完整性和并发性控制。其中,安全性控制可防止未经允许的用户存取数据;完整性控制可保证数据的一致性、正确性、有效性和相容性;并发性控制可防止多用户并发访问数据时由于相互干扰而产生的数据不一致。
1.1.7 关系模型的规范化原则 1.1 数据库基本概念 关系模型数据规范化的原则如下: 一个组织良好的数据库,不仅应该有利于方便地解决应用问题,而且还应为解决一些不可预测的问题带来便利,同时要尽可能地降低编程的难度,这就要求数据库中的数据一定要通过相应的约束条件实现数据规范化。 关系模型数据规范化的原则如下: (1) 第一范式: 在一个关系中,如果关系模式R的所有属性值都是不可分的原子值,那么称R是第一范式的模式,简记为1NF 。 (2) 第二范式:若关系模式R∈1NF,并且每一个非主属性都完全函数依赖于R的码,则R∈2NF 。 (3) 第三范式:若关系模式R∈1NF,且每个非主属性都不传递依赖于主码,则R∈ 3NF 。 数据规范化的基本思想是逐步消除数据依赖关系中不合适的部分,使含有不完全依赖或函数依赖的数学模型的数据达到有效的分离。
1.1.7 关系模型的规范化原则 1.1 数据库基本概念
1.1.7 关系模型的规范化原则 1.1 数据库基本概念
1.1.7 关系模型的规范化原则 1.1 数据库基本概念
1.1.7 关系模型的规范化原则 1.1 数据库基本概念 数据表之间的关联关系 从理论上讲,把这些依赖于关系模型建立的数据表组织在一起,可以反映客观事物数据间的多种对应关系。一般情况下,在同一个数据库中,相关联的数据表之间的关系有一对一、一对多、多对一和多对多的关系。 (1)一对一关系 一对一关系,即在两个数据表中选一个相同字段作为关联关键字段,把其中一个数据表中的关键字段称为原始关键字段,该字段值是唯一的,而另一个数据表中的关键字段称为外来关键字段,该字段值是唯一的。 (2)一对多关系 一对多关系,即在两个数据表中选一个相同的字段作为关联关键字段,把其中一个数据表的关键字段称为原始关键字段,该字段值是唯一的,而把另一个数据表中的关键字段称为外来关键字段,该字段值是重复的。
1.1.7 关系模型的规范化原则 1.1 数据库基本概念 (3)多对一关系 多对一关系与一对多关系是类似的,唯一的区别是在两个相关联的数据表中,先选择哪一个数据表中的关键字段为原始关键字段,该字段值是重复的,而与它关联的另一个数据表中的关键字段称为外来关键字段,该字段值是唯一的。 (4)多对多关系 多对多关系即在两个数据表中选一个相同的字段作为关联关键字段,把其中一个数据表的关键字段视为主关键字段,该字段值是重复的,把另一个数据表的关键字段视为外来关键字段,该字段值是重复的。
1.2 数据库系统 1.2.1 数据库系统的体系结构 1.2.2 数据库管理系统 1.2.3 数据库应用系统的构成
1.2.1 数据库系统的体系结构 1.2 数据库系统 数据库系统的三级模式结构:外模式、概念模式、内模式。如下图所式:
1.2.2 数据库管理系统 (database management system,DBMS)。 1.2 数据库系统 从信息处理的理论角度讲,如果把利用数据库进行信息处理的工作过程,或把管理、控制和操纵数据库的数据资源的方法看作是一个系统,则称这个系统为数据库管理系统 (database management system,DBMS)。 数据库管理系统提供对数据库资源进行统一管理和控制的功能,使数据与应用程序隔离,数据具有独立性;它可以使数据结构及数据存储具有一定的规范性,减少了数据的冗余,并有利于数据共享;它提供了安全性和保密性措施,使数据不被破坏和窃用。 数据库管理系统通常由3个部分组成: 数据描述语言(DDL)及其编译程序 数据操纵语言(DML)或查询语言及其编译或解释程序 数据库管理例行程序。
1.2.3 数据库应用系统的构成 1.2 数据库系统 数据库应用系统(简称数据库系统)是指引进了数据库技术后的整个计算机系统,是由硬件系统、软件系统、数据资源和计算机操作人员4个部分组成,为用户提供信息服务的系统。 硬件系统是数据库系统的物理设备支撑,包括CPU、内存、外存及输入/输出设备。 软件系统包括系统软件和应用软件两类。系统软件主要包括支持数据库管理系统运行的操作系统、数据库管理系统、开发应用系统的高级语言及其编译系统、应用系统开发的工具软件等,是开发应用系统的必要环境。 数据资源是数据库系统的管理对象,是为用户提供数据的信息源。 计算机操作人员是指管理、开发和使用数据库系统的全部人员,主要包括数据库管理员、系统分析员、应用程序员和用户。
1.3 Visual FoxPro 数据库管理系统 发展过程: 70年代末期 dBASEⅡ 1984~85 dBASEⅢ和dBASEⅢ+ 1987 FoxBASE+ 1989 FoxPro 1992 FoxPro for Windows(2.5版) 1995 VFP 3.0 1997 VFP 5.0 1998 VFP 6.0 今 VFP 7.0