VFP教程/第一章:Visual FoxPro基础
VFP教程 |
基本概念[ ]
数据库、数据模型、数据库管理系统、类和对象、事件、方法。
关系数据库[ ]
- 关系数据库:关系模型、关系模式、关系、元组、属性、域、主关键字和外部关键字。
- 关系运算:选择、投影、联接。
- 数据的一致性和完整性:实体完整性、域完整性、参照完整性。
知识要点[ ]
- 数据和信息
数据是存储在某一媒体上能够识别的物理符号。数据不仅包括数字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包括图形、图像、动画、影像和声音等多媒体数据。信息是一种已经被加工为特定形式的数据,信息是以某种数据形式表现的。
数据处理[ ]
数据处理是指将数据转换成信息的过程,其中心问题是数据管理。数据处理的内容主要包括:数据的收集、整理、存储、加工、分类、维护、排序、检索和传输等一系列活动的总和。数据处理的目的是从大量的数据中,根据数据自身的规律和及其相互联系,通过分析、归纳、推理等科学方法,利用计算机技术、数据库技术等技术手段,提取有效的信息资源,为进一步分析、管理、决策提供依据。数据处理也称信息处理。
计算机数据管理[ ]
是指对数据进行组织、分类、编码、存储、检索和维护等操作。计算机数据管理经历了人工管理、文件系统、数据系统、分布式数据库系统和面向对象数据库系统等几个阶段。
数据库(DB)[ ]
即DataBase,是存储在计算机存储设备上的结构化的相关数据集合,包括描述事物的数据本身及相关事物之间的联系。
数据库系统(DBS)[ ]
数据库应用系统简称为数据库系统(DBS),是一个计算机应用系统。也可以说它是指引进数据库技术后的计算机系统。
实体客观事物在信息世界中称为实体,它是现实世界中任何可区分、识别的事物。实体可以是具体的人或物,也可以是抽象概念
- 属性:实体具有许多特性,实体所具有的特性称为属性。一个实体可用若干属性来刻画。每个属性都有特定的取值范围即值域,值域的类型可以是整数型、实数型、字符型等;
- 实体型和实体集:属性值的集合表示一个实体,而属性的集合表示一种实体的类型,称为实体型。同类型的实体的集合称为实体集。性质相同的同类实体的集合称实体集。如一个班的学生。
- 实体联系:建立实体模型的一个主要任务就是要确定实体之间的联系。常见的实体联系有3种:一对一联系、一对多联系和多对多联系。
- 一对一联系(1:1):若两个不同型实体集中,任一方的一个实体只与另一方的一个实体相对应,称这种联系为一对一联系。如班长与班级的联系,一个班级只有一个班长,一个班长对应一个班级。
- 一对多联系(1:n):若两个不同型实体集中,一方的一个实体对应另一方若干个实体,而另一方的一个实只对应本方一个实体,称这种联系为一对多联系。如班长与学生的联系,一个班长对应多个学生,而本班每个学生只对应一个班长。
- 多对多联系(m:n):若两个不同型实体集中,两实体集中任一实体均与另一实体集中若干个实体对应,称这种联系为多对多联系。如教师与学生的联系,一位教师为多个学生授课,每个学生也有多位任课教师。
数据模型[ ]
数据模型是指数据库中数据与数据之间的关系。
数据模型是数据库系统中一个关键概念,数据模型不同,相应的数据库系统就完全不同,任何一个数据库管理系统都是基于某种数据模型的。数据库管理系统常用的数据模型有下列三种:层次模型、网状模型、关系模型。
- 层次数据模型(Hierarchical Model):层次模型是用树型结构来表示实体类型以及实体间联系的模型。它只能表示1:n的联系,不能表示实体类型之间的多对多的联系。
- 网状数据模型(Network Model):网状模型是用网状结构来表示实体类型以及实体间联系的模型。网中的每个结点表示一个实体类型。它能够表示实体间的多种复杂联系和实体类型之间的多对多的联系。
支持网状模型的DBMS称为网状数据库管理系统,在这种系统中建立的数据库是网状数据库。网络结构可以直接表示多对多联系,这也是网状模型的主要优点。
- 关系模型(Relational Model):关系模型是用二维表格结构来表示实体以及实体联系间模型。关系是由若干个二维表组成的集合。每个二维表又称为关系。Visual FoxPro是一种典型的关系型数据库管理系统。
关系[ ]
一个关系就是一张二维表,每个关系有一个关系名。在Visual FoxPro 中,一个关系存储为一个文件,其扩展名为.dbf,称为“表”。在关系模型中,关系具有以下基本特点:
- 关系必须规范化,属性不可再分割
- 在同一关系中不允许出现相同的属性名(字段)
- 关系中不允许有完全相同的元组(记录)
- 在同一关系中元组(行)的顺序可以任意
- 任意交换两个属性(列)的位置,不会改变关系模式。
以上是关系的基本性质,也是衡量一个二维表格是否构成关系的基本要素。在这些基本要素中,有一点是关键,即属性不可再分割,也即表中不能套表。
关系模式[ ]
对关系结构的描述称为关系模式,一个关系模式对应一个关系的结构。关系模式的简化表示模式:关系名(属性名1, 属性名2, …, 属性名n)
在VF 中使用:表名(字段名1,字段名2,……,字段名n)关系既可以用二维表格描述,也可以用数学形式的关系模式来描述。一个关系模式对应一个关系的数据结构,也就是表的数据结构。
对象[ ]
客观世界里的任何实体都可以看作是对象。对象可以是具体的实物,也可以是一些概念。例如一个命令、一个人、一个桌子等都可以看作是一个对象。
方法[ ]
方法是描述对象行为的过程,是某个对象接受了某个消息后所采取的一系列操作的描述。
类[ ]
类是对一类相似对象的性质描述,这些对象具有相同的性质:属性及方法种类相同。类可以看作是一类对象的模板,有了类,基于类就可以生成这类对象中的任何一个对象。
事件[ ]
事件是一种由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并做出相应的反应。事件可以由系统引发,也可以由用户引发。
元组[ ]
在一个二维表中,每一行是一个元组。元组对应存储文件中的一个具体记录。
属性[ ]
二维表中垂直方向的列称为属性,每一列有一个属性名,在Visual FoxPro中表示为字段名。每个字段的数据类型、宽度等在创建表的结构时规定。
域[ ]
指属性的取值范围,即不同元组对同一个属性的取值所限定的范围。
关键字[ ]
关键字是指属性或属性的组合,其值能唯一区分、确定不同元组(记录),在Visual FoxPro中表示为字段或字段的组合。需要强调的是,关键字的属性值不能取“空值”,所谓空值就是“不知道”或“不确定”的值,因而无法唯一地区分、确定元组。
在考试表中“准考证号”及“身份证号”属性可以作为关键字,因为准考证号和身份证号不允许相同。而“姓名”及“出生日期”则不能作为关键字,因为考生中可能出现重名或相同出生日期。
- 主关键字:关键字是指属性或属性的组合,其值能够惟一地标识一个元组。在VisualFoxPro 中表示为字段或字段的组合。在Visual FoxPro 中,起惟一标识一个元组的作用的关键字为主关键字或候选关键字。
- 外部关键字:如果表中的一个字段不是本表的主关键字或候选关键字,而是另外一个表的主关键字或候选关键字,这个字段就称为外部关键字。
关系运算[ ]
关系的基本运算有两类:一类是传统的集合运算,包括并、差、交;另一类是专门的关系运算,包括选择、投影和联接。
- 传统的集合运算:进行并、差、交集合运算的两个关系必须是具有相同的关系模式,既结构相同。
- 并:两个相同结构关系的并是有属于这两个关系的元组(记录)组成的集合。
- 差:有关系R 和关系S,是有属于R 而不属于S 的元组组成的集合,从R 中去掉S 中也有的元组。
- 交:有关系R 和关系S,既属于R 又属于S 的元组组成的集合。
- 专门的关系运算:在关系数据库中查询用户所需数据时,需要对关系进行一定的关系运算。关系运算主要有选择、投影和联接三种。
- 选择(Selection):是指从关系中找出满足指定条件的元组的操作。选择是从行的角度进行的运算,即选择水平方向的记录。选择的操作对象是一个表。运算是从关系中查找符合指定条件元组的操作。(对记录)
- 投影(Projection):投影是指从一个关系模式中选择若干个属性组成新的关系的操作。投影是从列的角度进行运算。投影的操作对象是一个表。运算是从关系中选取若干个属性的操作。 (对字段)
- 联接(Join):联接是从两个关系模式选择符合条件的元组或属性组成一个新的关系。联接结果是满足指定条件的所有记录。联接的操作对象是两个表。运算是将两个关系模式的若干属性拼接成一个新的关系模式的操作,对应的新关系中,包含满足联接条件的所有元组。(对字段)
自然联接在联接运算中,按照字段值对应相等为条件进行的联接操作称为等值联接。自然联接是去掉重复
- 实体完整性:实体完整性保证了表中记录的惟一性,即在一个表中不能出现重复记录。
- 参照完整性:参照完整性与表之间的联系有关,当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,可以检查对表的数据操作是否正确。
- 域完整性:数据类型的定义即属于域完整性的范畴。例如对于数值型字段,通过指定宽度,可以限定字段的取值类型和取值范围。
VFP教程 | ||
---|---|---|
|