Visual Foxpro 9.0数据库程序设计教程
上QQ阅读APP看书,第一时间看更新

1.1 数据库基础知识

1.数据的产生和发展

(1)数据与数据处理

数据是对事实、概念或指令的一种特殊表达形式,是能存储在计算机系统的物理介质上并能被计算机识别的物理符号。它包括两类:一类是能参与数字运算的数值型数据;另一类是不能参与数字运算的非数值型数据,如文字、图画、声音、活动图像等。

数据处理是将数据转换成信息的过程,它包括收集、存储、排序、计算、查询等。通过处理信息,可以获得并提取对人们有用的信息。

(2)计算机数据管理

随着计算机技术和应用范围的不断拓展,数据库技术的发展使得数据处理进入了一个崭新的阶段。计算机数据处理的发展经历了以下几个阶段:

①人工管理阶段。20世纪50年代中期以前,计算机主要用于科学计算,计算处理的数据量比较小,数据管理处于人工管理阶段。数据与程序不能分开,数据不能共享。

②文件系统阶段。20世纪50年代后期至60年代中后期,数据管理进入文件系统阶段。数据与程序分开存储,但互相依赖,数据不能共享。

③数据库系统阶段。20世纪60年代后期开始,伴随着计算机系统性价比的提高及软件技术的不断发展,进入数据库管理阶段。数据库技术使数据有了统一的结构,对所有的数据实行统一管理,数据与程序分开存储,数据可以共享。

④分布式数据库系统阶段。20世纪70年代后期以后,网络技术的发展为数据库提供了分布式运行环境。数据与程序可以分开存储,通过网络集中管理数据,共享网络上数据资源。

⑤面向对象数据库系统。开始于20世纪80年代,除具有分布式数据管理系统阶段的特点外,在处理方式上是一个面向对象的系统,即按照人们的习惯表示数据,用严格高效的方法组织、处理数据,把客观事物的表达和处理结合成一个有机整体。

2.数据库系统

(1)数据库系统基本概念

①数据库。数据库(DB)是按一定的组织方式存储在计算机上的相互联系的数据的集合。它不仅描述数据本身,还要描述数据之间的联系。具有最小的冗余度、数据独立性、实现数据共享、安全可靠、保密性能好等优点。

②数据库管理系统。数据库管理系统(DBMS)是对数据库的建立、使用和维护管理的软件。它包括数据定义语言(Data Define Language,DDL)、数据操纵语言(Data Manipulation Language,DML)、数据库运行控制,是数据库系统的核心。

③数据库应用系统。数据库应用系统(DBAS)是用数据库系统资源面向某一实际应用而开发的具体应用程序软件系统。例如,以数据库为基础的学生学籍管理系统、员工工资管理系统等。无论是面向内部业务和管理的管理信息系统,还是面向外部、提供信息服务的开放式信息系统,从实现技术角度而言,都是以数据库为基础和核心的计算机应用系统。

④数据库管理员。数据库管理员是负责全面管理和实施数据库控制及维护的技术人员。

(2)数据库系统组成

数据库系统(DBS)是进行数据处理全过程的计算机系统,一般是由数据库、数据库管理系统、数据库管理员、硬件系统和相关软件系统组成。

(3)数据库系统的特点

①数据的独立性。数据的独立性是指数据库和应用程序独立,与具体的程序无关。

②数据的共享性。数据的共享性是指可以为多个用户或多种语言程序使用。

③数据的冗余度小。数据的冗余度小是指重复的数据少,节省资源且易于维护。

④数据的结构化。数据的结构化是指数据库文件之间通过相同的字段建立联系,可减少重复的数据,节省存储空间,防止数据的不一致性。

⑤数据的安全性和完整性。数据的安全性和完整性是指为确保数据的安全性,允许采取安全措施。如规定密码、口令和存取权限,不得随意检索或修改库中的数据等。

3.数据模型

表示数据与数据之间联系的数据结构称为数据模型。

(1)层次模型

层次模型是用树状结构来表示数据之间的联系。特点是只有一个数据无父结点,其他结点有且只有一个父结点,如图1-1所示。

图1-1 层次模型示例

(2)网状模型

网状模型是用网状结构来表示数据之间的联系。网状模型可以实现多对多的关系,特点是允许一个以上的数据无父结点,允许结点有多于一个的父结点。

(3)关系模型

关系模型是用二维表的形式表示数据之间的关系,每个二维表称为一个“关系”。关系模型的示意图如表1-1所示。

表1-1 关系模型

(4)面向对象模型

面向对象模型主要用于存储、检索、处理和管理多媒体信息,它支持多媒体的任何结构和类型的数据,允许用户自行定义任何类型数据。面向对象的数据库管理系统提供了数据的封装、继承等功能。

(5)对象关系模型

随着多媒体数据的大量出现和应用的日益复杂,关系数据库也在不断吸收面向对象数据库的优点,出现了对象关系型数据库。其主要改进包括支持自定义类型(User-Defined Distinct Types,UDT)、方法、继承(目前仅DB2-6支持)和直接引用。

数据库系统发展的趋势是面向对象数据库和关系数据库将不断融合。而对象关系数据库由于继承了上述两者的优点,将会成为数据库发展的主流。