Visual FoxPro数据库技术基础
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 数据管理技术概述

1.1.1 数据、信息与数据处理

数据、信息与数据处理是非常基本的概念,它们贯穿于本课程的始终。因此,应正确理解它们的内涵,掌握它们的联系与区别。

(1) 数据

按照国际标准化组织(ISO)的定义,数据是对客观事物特征的一种抽象化、符号化的表示。例如,某人出生日期是1986年7月12日、身高1.76米、体重69千克,其中1986年、7月、12日、1.76米、69千克等都是数据,它们描述了这个人的某些特征。

数据可以有不同的表示形式,例如出生日期可以表示成“1986.7.12”、“1986/7/12”等形式。需要说明的是,数据处理领域中数据的概念比科学领域中数据的概念涵盖的范围广得多,不仅包括数字、字母、汉字及其他特殊字符组成的文本形式的数据,还包括图形、图像、声音等多媒体数据。总之,凡是能够被计算机处理的对象都称为数据。

把数据输入到计算机中以后,我们的目的并不只是把这些数据原封不动地再取出来,而是要用计算机对这些数据进行处理,为我们提供有用的、新的信息。从这个意义来讲,数据是用来承载信息的。

(2) 信息

按照国际标准化组织(ISO)的定义,信息是有一定含义的、经过加工处理的、对决策有价值的数据。例如,某排球队中各个队员的身高数据分别为1.93米、1.89米、1.87米、1.91米……经过计算得到平均身高为1.90米,这便是该排球队的一条信息。再如,一个班级学生某门课的成绩保存在计算机中,它是原始数据,教师经过查询得到优秀率,这就是该班级学生学习这门课程的一条信息。

信息与数据既有联系又有区别。信息是由数据加工处理得到的;数据是信息的载体,它表示了信息;信息是数据的内涵,是数据的价值体现。

信息是有价值的,其价值取决于它的准确性、及时性、完整性和可靠性。为了提高信息的价值,应采用科学的方法来管理信息,常用的方法就是数据库技术。

(3) 数据处理

数据处理是指对数据进行搜集、整理和加工、储存、传播等一系列活动的过程,也就是将原始数据加工成信息的过程,其主要目的就是从大量的、杂乱的数据中抽取并分析出某些有特点的、对需求者来说有价值的数据,为进一步的活动提供决策依据。

数据处理的步骤可以归纳为如下4步。

① 搜集数据:根据用户需要和系统自身的需求收集相关的数据。值得注意的是,系统所搜集的原始数据的真实性、适时性和完整性的程度将决定形成的信息的质量高低,因此,对原始数据的采集必须及时、准确、可靠、完整和实用。

② 数据的整理和加工:对数据进行核对、编辑、增删、分类、比较、筛选、计算和汇总等操作。只有根据管理任务的要求对数据进行整理和加工,才能形成符合管理决策所需要的信息。

③ 存储数据:搜集到的数据及经过加工处理后的信息,必须用适当的形式及时存储起来,以便今后使用。

④ 信息传播:将整理和加工后的信息按照管理工作的需求,以各种形式的文件或报表、图形图像、声音等较为直观、形象的形式提供给有关部门或人员。信息传播手段有许多种,可以通过邮政、电报、电话等方式传播,也可以采用计算机网络、卫星、微波通信、光纤通信等先进的传输技术进行传播。

就计算机技术而言,数据处理是指使用计算机外部存储设备存储大量数据,通过计算机软件管理数据,通过应用程序对数据进行加工处理,然后通过输出设备或传输设备将有价值的信息提供给相应的需求人员。

1.1.2 数据管理技术的发展过程

数据处理的核心问题是数据管理,计算机对数据的管理是指对数据的组织、分类、编码、存储、检索和维护提供操作手段。数据管理技术随着计算机硬件和软件技术的发展而不断发展,经历了由低级到高级的发展过程,我们大致可以将其分为人工管理、文件系统和数据库系统三个阶段。

(1) 人工管理阶段

20世纪40年代末至50年代中期,计算机主要用于科学计算,还没有专门用于管理数据的软件。计算机进行数据处理时,数据与程序结合在一起,如图1.1所示。

图1.1 人工管理阶段中程序与数据之间的关系

人工管理阶段存在以下缺点。

① 数据与程序不具有独立性:一个程序中的数据,仅供该程序使用,其他程序不能使用;一个程序仅能处理本程序中的数据,不能处理其他数据。

② 使用不方便:如果数据的类型、格式、内容或输入输出方式发生改变,则必须修改对数据进行处理的程序。

③ 数据存在大量的冗余:对同一数据进行不同处理时,每个处理程序中都要包含相应的数据,各程序中存在着大量的重复数据,这种现象称为数据冗余。

(2) 文件系统阶段

由20世纪50年代后期至60年代,计算机的硬件和软件系统都有了很大发展。硬件方面出现了可以直接存取的存储器,软件方面出现了高级语言和操作系统。计算机开始大量地用于数据处理工作。这时程序和数据可以分别存储为程序文件和数据文件,即程序与数据不再是一体,如图1.2所示。程序员可以把精力集中在数据处理的方法上,而不必再花更多的时间去考虑数据存储的具体细节。

图1.2 文件系统阶段中程序与数据之间的关系

文件系统阶段虽然比人工管理阶段有了很大的进步,但仍存在以下缺点。

① 程序与数据相互依赖性很强:数据文件只是为了专门的需要设计的,仅供某一特定应用程序使用。

② 数据的冗余性:由于文件之间缺乏联系,造成每个处理程序都有相应的数据文件,同样的数据有可能在多个文件中重复存储。

③ 数据的不一致性:这往往由数据的冗余造成,相同的数据在不同文件中存储时,如果处理数据时没有对它们同步进行更新,就会使同样的数据在不同的文件中不一致。

④ 数据的无关性:数据文件无集中管理,各个文件无统一的管理机制,文件之间相互独立,无法相互联系。

(3) 数据库系统阶段

从20世纪60年代开始,随着计算机技术的迅速发展,计算机广泛应用于企事业管理,数据量急剧增加,数据管理的规模越来越大,数据共享的要求也越来越高,用人工和文件系统管理远远满足不了需求。为适应多用户、多个应用程序共享大量数据的需要,出现了统一管理数据的专门软件系统,即数据库管理系统,以数据库管理系统为核心的数据处理系统称为数据库系统,如图1.3所示。

图1.3 数据库系统阶段中程序与数据之间的关系

数据库系统通过数据库管理系统对所有的数据进行集中的、统一的管理,使数据存储完全独立于使用的应用程序。

用数据库系统管理数据的特点如下。

① 数据共享性高、冗余度小:数据共享是数据库系统先进性的重要体现。数据库中的数据不再只是面向某个应用程序而是面向整个系统,系统中的所有用户和应用程序都可以存取库中的数据。这样便减少了不必要的数据冗余,节省了存储空间,同时也避免了数据之间的不相容性与不一致性。

② 数据结构化:数据被按照某种数据模型组织到一个结构化的数据库中,系统不仅考虑某个应用项目的数据结构,而且还考虑整个应用系统的数据结构,因此整个应用系统的数据不是孤立的,这样可以方便地表示出数据之间的有机联系。

以一个学生管理系统为例,系统包括学生(学号、姓名、性别、出生日期、专业)、课程(课程号、课程名称、学分)、成绩(学号、课程号、成绩)等数据。若采用数据库方式进行管理,可方便地建立与之相对应的3个数据文件,并建立它们之间的联系,从而很容易地实现类似既要查询某个学生的学号、姓名又要查询其所学课程名称、成绩等来自不同文件数据的操作。

③ 提高了数据的独立性:数据库中数据与应用程序相互独立、互不依赖,不因一方的改变而改变另外一方。这样大大减少了应用程序的设计、修改与维护的工作量。

④ 数据统一管理与控制:数据库是系统中各用户的共享资源,而共享一般是并发的,即多个用户可能同时使用一个数据库。数据库系统中的核心软件——数据库管理系统能提供必要的保护措施,包括并发访问控制、数据安全性和完整性控制等,从而满足了数据的完整性和安全性等方面的要求。