270 likes | 483 Views
第 1 章 数据库基础知识. 本章内容: 数据库系统概述 关系及关系运算 数据库设计基础 熟悉 Visual FoxPro 6.0 系统. 1.1 数据库系统概述. 1.1.1 基本概念. 1 、数据( Data ) 2 、数据库( DataBase, DB ) 3 、数据库管理系统( DataBase Management System, DBMS ) 4 、数据库系统( DataBase System, DBS ). 1.1.2 数据管理技术的发展. 1 、人工管理阶段 该阶段管理数据的特点是: ( 1 )数据不保存。
E N D
第1章 数据库基础知识 本章内容: 数据库系统概述 关系及关系运算 数据库设计基础 熟悉Visual FoxPro 6.0系统
1.1 数据库系统概述 1.1.1 基本概念 1、数据(Data) 2、数据库(DataBase, DB) 3、数据库管理系统(DataBase Management System, DBMS) 4、数据库系统(DataBase System, DBS)
1.1.2 数据管理技术的发展 1、人工管理阶段 该阶段管理数据的特点是: (1)数据不保存。 (2)应用程序管理数据。 (3)数据不共享。 (4)数据不具有独立性。 2、文件系统阶段 (1)数据可以长期保存 (2)由文件系统管理数据 (3)数据共享性差,冗余度大 (4)数据独立性差
3、数据库系统阶段 20世纪60年代后期以来,计算机管理的对象规模越来越大,应用越来越广泛,数据量激增,在这样的背景下,统一管理数据的专门软件系统—数据库管理系统应运而生,数据管理登上一个新的高度。
1.1.3 数据库系统的特点与分类 1、数据库系统的特点 (1)数据结构化。 (2)数据的共享性高,冗余度低,易扩充。 (3)数据独立性高。 (4)数据由DBMS统一管理和控制。
2、数据库系统的分类 (1)面向对象数据库 当存储和检索的内容涉及到图形、文本、声音、图像等多媒体数据时,人们就探索用对象模型来组织多媒体数据库,推动并促进了对象式数据库的产生。 (2)分布式数据库 分布式数据库则把数据分散地存放在网络上的多个结点上,彼此用通信线路连接。 (3)演绎数据库 演绎数据库是具有演绎推理能力的数据库。演绎数据库除了存储事实外,还能存储用于逻辑推理的规则。 (4)关系数据库 关系模型是目前最重要的一种数据模型
1.1.4 数据模型 1、数据模型 数据模型(Data Model)是对现实世界数据特征的抽象。换句话说,数据模型就是用来描述数据、组织数据和对数据进行操作的。 图 现实世界中对客观对象的抽象过程
2、概念模型 概念模型用于信息世界的建模 ,信息世界涉及的主要概念有 : (1)实体(Entity) (2)属性(Attribute) (3)域(Domain) (4)实体型(Entity Type) (5)实体集(Entity Set)
3、数据模型的分类 • 层次模型(Hierarchical Model) • 网状模型(Network Model) • 关系模型(Relational Model) • 面向对象模型(Object Oriented Model) • 对象关系模型(Object Relational Model)。 关系数据库系统的研究和开发在近30年来取得了辉煌的成就。关系数据库系统从实验室走向了社会,成为最重要、应用最广泛的数据库系统,大大促进了数据库应用领域的扩大和深入。
1.2关系数据库 1.2.1关系 1、术语 关系:从用户的角度来看,关系就是一张二维表。表的每一行称为一个元组。表的每一列对应一个域,每一列有一个唯一的名字,称为属性。 域 :一组具有相同数据类型的值的集合。 笛卡尔积 :域上的一种集合运算。 候选码 :指的是某个属性组,该属性组能唯一标识一个元组。候选码也称为主关键字、主键。
关系通常具备如下性质: (1)每一列中的数据项属于同一种数据类型,来自 同一个域,即同质的(Homogeneous)。 (2)不同的列可出自同一个域,其中的每一列为一 个属性,不同的属性的名称互不相同。 (3)行和列的次序可以任意交换。 (4)不允许有重复的行,至少两个元组的候选码不 能完全相同。 (5)表中的数据项均是不可再分的,即每一个具体 的数据都必须取原子值。简而言之就是不允许 “表中有表”。
1.2.2关系的运算 关系运算的对象是关系,其运算结果也是关系。关系的运算分为传统的集合运算和专门的关系运算。 1、传统的集合运算 (1)并(Union) 关系R与关系S的并由属于R或属于S的元组组成。 (2)交(Intersection) 关系R与关系S的交由既属于R又属于S的元组组成。 (3)差(Exception) 关系R与关系S的差由属于R但不属于S的元组组成。
2、专门的关系运算 (1)选择(Selection) 选择运算是从关系R中选择满足给定条件的诸元组,是从行的角度进行的运算。 (2)投影(Projection) 投影运算是从关系R中挑选出若干属性列组成的新的关系,是从列的角度进行的运算。 (3)联接(Join) 连接运算是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。
1.3 数据库设计基础 1.3.1概述 设计一个好的数据库与设计一个好的数据库应用系统是密不可分的。一个好的数据库结构是应用系统的基础,特别在实际的系统开发项目中两者更是密切相关、并行进行的。
1.3.2数据库设计的特点 1、数据库建设的基本规律 2、结构(数据)设计和行为(处理)设计相结合
1.3.3数据库设计方法 充分运用以上知识,才能够设计出符合具体应用领域要求的数据库。为此,研究人员和技术人员提出了各种数据库设计的方法 主要有: 新奥尔良(New Orleans)方法 基于E-R模型的数据库设计方法 3NF(第三范式)的设计方法 ODL(Object Definition Language)方法
1.3.4数据库设计的基本步骤 数据库及其应用系统开发的全过程,可以将数据库设计分为6个步骤 : 1、需求分析阶段 2、概念结构设计阶段 3、逻辑结构设计阶段 4、物理设计阶段 5、数据库实施阶段 6、数据库运行和维护阶段
1.4 Visual FoxPro 6.0系统初识 1.4.1 Visual FoxPro 6.0的产生与发展 • 主要经历了3个阶段 1.dBASE阶段 2.FoxBASE和FoxPro阶段 3.Visual FoxPro阶段 • 1995 VFP 3.0版运行于Win3.x、Win9X和WindeosNT环境。 • 1997 VFP 5.0中文版。 • 1998 VFP 6.0中文版。
Visual FoxPro 6.0提供了一系列可视化的辅助开发工具,包括: 1.向导 向导有20多种,引导用户完成某项任务。 2.设计器 可以用来创建或修改复杂的对象,使用方法非常灵活。 3.生成器 生成器又称为构造器,其主要功能是在VFP应用程序的组件中加入某类控件(如组合框),或为之设置属性等。 4.项目管理器 项目管理器主要功能是对被开发系统的数据、文档、源代码和类库等资源进行集中、高效的管理。
1.4.4 Visual FoxPro 6.0的工作方式 • 1、Visual FoxPro 6.0中的命令 Visual FoxPro 6.0命令的一般格式: 命令动词[<范围>][[FIELDS]<字段名表>] [FOR<条件>]|[WHILE<条件>] 相关参数和选项的含义: ①命令动词:是一个英文动词,表示进行何种操作。 ②符号约定:用方括号[]括起来的项表示为可选项。用尖括号<>括起来的选项表示为必选项。若命令中的竖线|表示其左右两边的选项可任选其一。 ③范围子句:规定命令操作的记录范围。 ALL 表中全部记录 RECORD n 表中指定的第n条记录 NEXT n 从表中当前记录开始向下的n条记录 REST 从表中当前记录开始到最后一个记录为止的所有记录
④[FIELDS]<字段名表>子句:由表达式组成,各表达式间用逗号分隔,该表达式在一般情况下由表中的字段名构成,用以表示对所列字段进行操作。FIELDS可省略。④[FIELDS]<字段名表>子句:由表达式组成,各表达式间用逗号分隔,该表达式在一般情况下由表中的字段名构成,用以表示对所列字段进行操作。FIELDS可省略。 ⑤FOR<条件>:表示对满足<条件>所指的逻辑表达式值为真(.T.)的记录进行操作。如未指定范围和WHILE子句,则系统默认从首记录到末记录,对满足条件的记录进行操作。 ⑥WHILE<条件>:如果范围采用默认值,则从当前记录开始按顺序对满足<条件>所指的逻辑表达式值为真(.T.)的记录进行操作,直至逻辑表达式值为假(.F.)的记录为止。 FOR和WHILE选项在默认范围选择项条件的不同点: ①FOR子句是从首记录开始判断逻辑表达式的值是真还是假,而WHILE子句则是从当前记录开始判断逻辑表达式值的真假。 ②)FOR子句是对整个表中所有满足条件的记录进行操作,而WHILE子句则是从当前记录开始对满足条件的连续记录进行操作,即遇到不满足条件的记录,则立即停止操作,不管其后是否还有满足条件的记录。 ③FOR和WHILE子句在某些命令中既可以单独使用,也可以同时使用。但WHILE子句的优先级高于FOR子句。
2、Visual FoxPro 6.0的工作方式 (1)交互操作方式 (2)程序执行方式
第1章 数据库基础知识 本章结束