资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Visual Foxpro 程序设计,化学工业出版社,第一章 数据库基础知识,当今,人类社会已进入信息化时代,计算机已由最初单纯的数值计算工具逐渐转变成为信息处理的主要工具,信息处理已成为计算机的主要应用方向。数据是对客观事物记录下来的事实,是描述或表达信息的物理形式,计算机中,凡能为计算机所接受和处理的物理形式,例如字符、数字、图形、图像、声音都可称为数据。在信息化时代,数据处理问题更具有数据量大、类型多、结构复杂等特点,同时,对数据的贮存、检索、分类、统计等处理的要求更高。为了适应这一特点与需求,把数据从过去附属于程序的做法改变为数据与程序相对独立,并对独立的数据加以组织与管理,使之能为更多不同的程序所共享,这,就是“数据库系统”的基本特点之一。数据库技术作为一种结构化的数据管理技术,使得管理的数据具有独立性、可控冗余度和完整性等特点。由于数据库技术的出现,数据处理的成本大大降低,效率越来越高,可靠性不断增加,从而推动了计算机应用的普及。,本书介绍的Visual FoxPro软件即是一个数据库管理系统,可以用于建立和管理数据库;同时也是一种编程工具,可以采用可以采用Visual FoxPro提供的编程语言编制各种应用程序,尤其是数据库应用方面的程序。,1.1.1 数据、信息、数据处理,1.数据,为了描述客观事物而用到的数字、字符及所有能输入到计算机中并能被计算机处理的符号都可以看作数据。例如,某人年龄为40岁,职称为“高级工程师”,这里的40、“高级工程师”就是数据。在实际应用中,有多种基本形式的数据:一种是可以参与数值运算的数值型数据,如表示成绩、工资的数据;另一种是由字符组成、不能参与数值运算的字符型数据,如表示姓名、职称的数据。此外,还有图形、图像、声音等多媒体数据,如人的照片、商品的商标等。数据是数据库存储和处理的基本对象。,2.信息,信息是经过加工处理并对人类社会实践和生产活动产生决策影响的数据。不经过加工处理的数据只是一种原始材料,对人类活动产生不了决策作用。人们通过各种方式所获得的原始数据,利用解释、分析、归纳和综合等方法,从中获得的有用数据才是信息。因此,数据是信息存在的一种形式,只有通过解释或处理之后,有使用价值的数据才能成为信息。,3.数据处理,数据处理是指将数据转换成信息的过程。从数据处理的角度看,信息是一种被加工成特定形式的数据。人们有时说“信息处理”,其真正含义是为了产生信息而处理数据。人们通过处理数据可以获得信息,通过分析和筛选信息可以帮助决策。例如,全体考生各门课程的考试成绩记录了考生的考试情况,属于原始数据,对考试成绩进行分析和处理,如统计各分数段的人数或按成绩从高到低顺序排列后,根据招生人数确定录取分数线等。,在计算机中,使用计算机外部存储器,如磁盘、光盘来存储数据;通过计算机软件来管理数据;通过应用程序来对数据进行加工处理。,1.人工管理阶段,20世纪50年代中期以前,计算机主要应用于科学计算。外部存储器只有磁带、卡片和纸带,软件只有汇编语言,尚无数据管理方面的软件,数据处理的方式基本上是批处理。这个时期数据管理的特点是:数据不保存、没有专用的软件对数据进行管理、数据不具有独立性和数据是面向程序的。,2.文件系统阶段,20世纪50年代后期至60年代后期,计算机开始大量用于数据管理。计算机硬件出现了直接存取的大容量外部存储器,如磁盘、磁鼓等,这为计算机系统管理数据提供了硬件基础。软件方面,出现了操作系统。操作系统中的文件系统是专门的数据管理软件。这时可以把相关的数据组成一个文件存放在计算机中,在需要时只要提供文件名,计算机就能从文件系统中找出所要的文件,把文件中存储的数据提供给用户进行处理。,3.数据库系统阶段,0世纪60年代后期,计算机在管理中的应用规模更加庞大,数据量急剧增加,数据共享性更强。硬件价格下降,软件价格上升,编制和维护软件所需成本相对增加,其中维护成本更高。这些成为数据管理在文件系统的基础上发展到数据库系统的原动力。,在数据库系统中,由数据库管理系统(DataBase Management System,简称DBMS)来对数据进行统一的控制和管理,从而可以有效地减少数据冗余,实现数据共享,解决数据独立性问题,并提供统一的安全性、完整性和并发控制功能。,存储图形、声音等复杂的对象,并能实现复杂对象行为。对于这些复杂数据,关系数据库无法实现对它们的管理。正是实际中出现的许多问题,促使数据库技术不断向前发展,涌现出许多不同类型的新型数据库系统。20世纪80年代中期以来,对“面向对象的数据库系统”和“对象关系数据库系统”的研究都十分活跃。将数据库技术与面向对象技术相结合,便顺理成章成为研究数据库技术的新方向,并构成了第三代数据库系统的技术基础。,1.2,数据库系统,数据库系统其实就是以数据库应用为基础的计算机系统,数据库系统有四个重要的组成部分,即经过组织,可供多方面使用的数据集合-数据库;支持数据贮存和数据操作的计算机系统;介于数据库和应用程序之间的数据库管理系统;提供给用户使用的各种数据库应用程序。广义的数据库系统也包括使用数据库的用户和数据库的管理人员。和一般的应用系统相比,数据库系统有其自身的特点。本节将介绍数据库、数据库系统、数据库管理系统、数据库应用系统等几个相互关联但又有区别的基本概念,以及数据库管理系统所支持的各种数据类型。,2.数据库,数据库(DataBase,简称DB)通俗的解释是存储数据的仓库,是按一定组织方式存储在计算机存储设备上、相互关联的数据集合。它不仅包含描述事物的数据本身,而且还包括相关事物之间的联系。而在计算机里,把组织成二维(行和列)形式的表格称为关系型数据库,简称数据库,如表1-1。数据库的每一列称为一个字段,第一行为字段名行,称为数据库的结构。其余每一行数据称为一个记录。同一字段的数据应具有相同的属性,库中不能有相同的记录。,3.数据库系统,数据库系统就是为完成某一应用目标而进行数据处理的整个计算机系统。通常可视为由相关人员(用户、数据库管理员、数据库系统开发人员)、软硬件设备、数据库和数据库管理系统等组成的一个信息处理系统。各部分的关系如图1-4所示。,4.数据库应用系统,数据库应用系统是指系统开发人员利用数据库系统资源开发出来的、面向某一类实际应用的应用软件系统。它分为两类:(1)管理信息系统,这是面向机构内部业务和管理的数据库应用系统,如人事管理系统、教学管理系统等;(2)开放式信息服务系统,这是面向外部、提供动态信息查询功能,以满足不同信息需求的数据库应用系统,如大型综合科技信息系统、经济信息系统和专业的证券实时行情、商品信息系统等。,1.2.2 数据库系统的特点,数据库系统具有以下几个特点:,1.数据独立,应用程序不需要了解数据实际的存取方式,通过数据库的存取指令,就可得到所需数据。因此,当数据的存取结构变更时,仅需更改数据库系统的内部程序,外部的应用程序完全不需要改变。,2.数据共享,共享是数据库系统的目的,也是它的重要特点。一个库中的数据不仅可为同一企业或机构之内的各个部门所共享,也可为不同单位、地域甚至不同国家的用户所共享。而在文件系统中,数据一般是由特定的用户专用的。,3.减少冗余,由于非数据库系统中,每个应用程序都使用专属自己的数据,经常会造成数据的重复建立,而且彼此之间的数据格式也不同,无法交互应用。在数据库系统中,仅建立公用的数据库,其余的应用程序都使用该数据库,因此,可大大减少数据的冗余。,数据库从全局观念来组织和存储数据,数据已经根据特定的数据模型结构化,数据库中用户的逻辑数据文件和具体的物理数据文件不必一一对应,从而有效地节省了存储资源,减少了数据冗余,增强了数据的一致性。,1.2.3 数据模型,为了反映事物本身及事物之间的各种联系,数据库中的数据必须有一定的结构,这种结构用数据模型来表示。一个具体的数据模型应当正确地反映出数据之间存在的逻辑关系。数据库不仅管理数据本身,而且要使用数据模型表示出数据之间的联系。对于不同的数据模型,相应的数据库管理系统也不同。任何一个数据库管理系统都是基于某种特定的数据模型的。数据库管理系统所支持的数据模型可分为三种类型:即层次模型、网状模型、关系模型。,关系模型,关系模型中仅存在唯一的结构类型关系,所谓关系型数据库就是用关系模型组织的数据库结构。我们可将关系型数据库结构看成是一个二维表(如表1-1所示),这种二维表就是关系,无论是实体本身还是实体之间的联系均用二维表表示,使得实体中的数据本身能自然地反映它们之间的联系。例如:有学生情况、学生成绩和班级名称三种数据的集合。,虽然关系模型比层次模型和网状模型出现得晚,但是因为它建立在严格的数学理论基础上,所以是目前十分流行的一种数据模型。自20世纪80年代以来,新推出的数据库管理系统几乎都支持关系模型,Visual FoxPro就是一种关系数据库管理系统。,1.2.4 关系型数据库,关系数据库系统是支持关系数据模型的数据库系统,关系数据库中包含若干个关系(二维表),每个关系都由关系模式确定,每个关系模式包含若干个属性和属性对应的域。所以,定义关系数据库就是逐一定义关系模式,对每一关系模式逐一定义属性及其对应的域。,2.关系运算,在对关系型数据库中的数据进行操作和处理时,往往要找到用户所需要的数据,此时就要对关系进行一定的关系运算。常用的关系运算有三种:,1)选择,所谓选择是指在关系中找出满足给定条件的数据操作。选择的条件以逻辑表达式给出,是逻辑表达式条件为真的数据被选取。例如,在学生基本信息表中要查找出入学成绩在80分以上学生的操作,就是选择。,2)投影,所谓投影是指在关系中选取某些属性列组成新的关系,相当于对关系进行垂直分解,在新关系中包含的属性个数比原来关系少。例如,在学生基本信息表中要查找出涉及班级的数据的操作就是投影。,3)联接,所谓联接运算是将两个关系模式拼接成一个更宽的关系模式,新关系中包含满足条件的元组。两个关系模式的联接是通过联接条件实现的,联接的结果是满足条件的所有记录。,1.3,常见数据库管理系统,开发一个数据库应用系统,需要掌握一种数据库管理系统并熟悉一种开发工具。随着数据库技术的飞速发展,可供选择的方案很多。目前常用的数据库管理系统有许多种,如Microsoft Access、Visual FoxPro、SQL Server、Oracle、Sybase、Informix等。根据它们的功能,可分为两大类:小型数据库管理系统和大型数据库管理系统。,1.3.1 小型数据库管理系统,1.Access,Access是Microsoft Office办公软件中的重要组成部分,是目前比较流行的小型桌面数据库管理系统,适合初学者学习使用。Access具有关系数据库管理系统的基本功能,使用它可以方便地利用各种数据源,生成窗体(表单)、查询、报表和应用程序等。,2、Visual FoxPro,Visual FoxPro是新一代小型数据库管理系统的代表,它以强大的性能、完整而又丰富的工具、较高的处理速度、友好的界面及完备的兼容性等特点,受到广大用户的欢迎。Visual FoxPro提供了一个集成化的系统开发环境,它使数据的组织与操作变得简单方便。它在语言体系方面作了强大的扩充,不仅支持传统的结构化程序设计,而且支持面向对象程序设计,并拥有功能强大的可视化程序设计工具。利用可视化的设计工具和向导,用户可以快速创建表单、菜单、查询和打印报表。,1.3.2 大型数据库管理系统,1.SQL Server,SQL Server作为Microsoft公司在Windows平台上开发的数据库,区别于Visual FoxPro、Access等小型数据库,是一个大型分布式客户-服务器结构的关系型数据库管理信息系统,目前主流版本为SQL Server 2000、SQL Server 2005、SQL Server 2008,为面向不同的应用还分为企业
展开阅读全文