版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 数据库系统及Visual FoxPro 概述本章要点本章要点 本章主要讲解数据管理技术和中文Visual FoxPro的基本操作。通过本章学习,应该掌握以下内容: n数据管理技术的发展阶段n数据库、数据库管理系统、数据库系统及其相互关系n数据模型n关键字的概念nVFP的项目管理器本章知识结构本章知识结构n 数据库基础知识数据库基础知识n 数据库技术数据库技术n 数据模型数据模型n 关系数据库关系数据库n DBMS主流产品主流产品n Visual Foxpro概述概述n VFP操作环境操作环境n VFP命令命令n VFP文件类型文件类型n 项目管理器项目管理器1.1 1.1 数据库基础知
2、识数据库基础知识?计算机的三大主要应用计算机的三大主要应用数据处理是指对各种形式的数据进行收集、整理、存储、维护、检索、数据处理是指对各种形式的数据进行收集、整理、存储、维护、检索、统计和传输的一系列活动的总和。统计和传输的一系列活动的总和。数据库技术所研究的问题就是如何科学地组织和存储数据,如何高效地数据库技术所研究的问题就是如何科学地组织和存储数据,如何高效地获取和处理数据。数据库技术作为数据管理的主要技术目前已广泛应用获取和处理数据。数据库技术作为数据管理的主要技术目前已广泛应用于各个领域,数据库系统已成为计算机系统的重要组成部分。于各个领域,数据库系统已成为计算机系统的重要组成部分。1
3、科学计算科学计算3过程控制过程控制2数据处理数据处理 数据库技术产生于数据库技术产生于20世纪世纪60年代末年代末70年代初,其主要目的是有效地管年代初,其主要目的是有效地管理和存取大量的数据资源。数据库技术主要研究如何存储、使用和管理数理和存取大量的数据资源。数据库技术主要研究如何存储、使用和管理数据,是计算机数据管理技术发展的新阶段。据,是计算机数据管理技术发展的新阶段。 近年来,近年来,数据库技术数据库技术和和计算机网络技术计算机网络技术的发展相互渗透、相互促进,的发展相互渗透、相互促进,已成为当今计算机领域发展迅速、应用广泛的两大领域。数据库技术不仅已成为当今计算机领域发展迅速、应用广
4、泛的两大领域。数据库技术不仅应用于事务处理,并且进一步应用到情报检索、人工智能、专家系统、计应用于事务处理,并且进一步应用到情报检索、人工智能、专家系统、计算机辅助设计等领域。算机辅助设计等领域。 1.1.1 1.1.1 数据库技术数据库技术1.1.1.1 1.1.1.1 数据管理技术的发展数据管理技术的发展原始数据原始数据采集采集数据管理的基本环节数据管理的基本环节数据规范数据规范与编码与编码数据输入数据输入数据处理数据处理数据输出数据输出人工管理阶段人工管理阶段Phase 1Phase 2Phase 3数据管理的发展阶段数据管理的发展阶段文件系统阶段文件系统阶段数据库系统阶段数据库系统阶段
5、1.1.人工管理阶段人工管理阶段 20世纪50年代中期以前,计算机主要用于数值计算。从当时的硬件看,外存只有纸带、卡片、磁带,没有直接存取设备;从软件看(实际上,当时还未形成软件的整体概念),没有操作系统及管理数据的软件;从数据看,数据量小,数据无结构,由用户直接管理,且数据间缺乏逻辑组织,数据依赖于特定的应用程序,缺乏独立性。 对数据的管理完全由程序员在其程序中进行管理。即:程序与其处理对数据的管理完全由程序员在其程序中进行管理。即:程序与其处理的对象(数据)相互结合成一个整体,两者相互依存。的对象(数据)相互结合成一个整体,两者相互依存。 数据的管理是分散的。数据的管理是分散的。应用程序应
6、用程序A1A1应用程序应用程序A2A2应用程序应用程序AnAn数据集数据集S1S1数据集数据集S2S2数据集数据集SnSn图图1-1 1-1 数据的人工管理数据的人工管理数据和程序数据和程序的相互依赖!的相互依赖!数据的冗数据的冗余度大!余度大!其特点是:(1)数据由应用程序自己管理,没有相应的软件系统负责数据的管理工作。(2)数据不能共享,只面向相应的应用程序。(3)应用程序依赖于数据,不具有数据独立性。2.2.文件系统阶段文件系统阶段 20世纪50年代后期到20世纪60年代中期,出现了磁鼓、磁盘等直接存取数据的存储设备。人们得益于计算机惊人的处理速度和大容量的存储能力,从而解脱了从大量传统
7、纸张文件中寻找数据的困难,这种基于计算机的数据处理系统也就从此迅速发展起来。 应用程序通过文件管理系统进行数据文件的建立、存取、修改和删除应用程序通过文件管理系统进行数据文件的建立、存取、修改和删除操作操作。 各应用程序根据自身需要建立数据文件,文件管理系统所管理的数据各应用程序根据自身需要建立数据文件,文件管理系统所管理的数据基本上是分散的。基本上是分散的。应用程序应用程序A1A1应用程序应用程序A2A2应用程序应用程序AnAn数据集数据集S1S1数据集数据集S2S2数据集数据集SnSn文件文件系统系统 图图1-2 1-2 数据的文件系统数据的文件系统其特点是:(1)数据可以以文件形式长期存
8、储在辅助存储器中。(2)程序与数据之间具有相对的独立性,即数据不再属于某个特定的应用,数据可重复使用。(3)数据文件组织多样化,有索引文件、链接文件、直接存取文件等。3.3.数据库系统阶段数据库系统阶段 20世纪60年代后期,计算机性能得到提高,更重要的是出现了大容量磁盘,存储容量大大增加且价格下降。在此基础上,有可能克服文件系统管理数据时的不足,而去满足和解决实际应用中多个用户,多个应用程序共享数据的要求,从而使数据能为尽可能多的应用程序服务,这就出现了数据库这样的数据管理技术。 利用数据库管理系统对数据实行统一的、集中的管理,使数据的存储利用数据库管理系统对数据实行统一的、集中的管理,使数
9、据的存储独立于应用程序。独立于应用程序。应用程序应用程序A1A1应用程序应用程序A2A2应用程序应用程序AnAn数据数据库库数据库数据库管理系统管理系统图图1-3 1-3 数据的数据库系统数据的数据库系统其特点是:(1)采用数据模型表示复杂的数据结构。数据模型不仅描述数据本身的特征,还描述数据之间的联系。(2)数据的存储独立于应用程序。(3)提供了数据安全性、完整性等控制功能,以及对数据操作的并发控制、数据和备份与恢复等功能。(4)为用户提供了方便的用户接口。1.1.数据数据 数据是指存储在某一种媒体上能够识别的物理符号。数据是指存储在某一种媒体上能够识别的物理符号。数据数据的概念包括两个方面
10、:其一是描述事物特性的数据内容;其二的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式。由于描述事物特性必须借是存储在某一种媒体上的数据形式。由于描述事物特性必须借助一定的符号,这些符号就是数据形式。数据形式可以是多种助一定的符号,这些符号就是数据形式。数据形式可以是多种多样的,例如某人的出生日期是多样的,例如某人的出生日期是“19641964年年2 2月月1717日日”,当然也可,当然也可以将该形式改写为以将该形式改写为“02/17/6402/17/64”,但其含义并没有改变。,但其含义并没有改变。数据不仅仅指数字、字母、文字和其他特殊字符组成的文本数据不仅
11、仅指数字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包括图形、图像、动画、影像、声音等多形式的数据,而且还包括图形、图像、动画、影像、声音等多媒体数据。媒体数据。1.1.1.2 1.1.1.2 数据库的基本概念数据库的基本概念2 2. .数据处理数据处理 数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系列活动的总和。列活动的总和。其目的之一是从大量的、原始的数据中抽取、推导出对人其目的之一是从大量的、原始的数据中抽取、推导出对人们有价值的信息以作为行动和决策的依据;目的之二是为了借助计算机科们有价值的信息以作为行
12、动和决策的依据;目的之二是为了借助计算机科学地保存和管理复杂的、大量的数据,以便人们能够方便而充分地利用这学地保存和管理复杂的、大量的数据,以便人们能够方便而充分地利用这些宝贵的信息资源。些宝贵的信息资源。3.3.数据库数据库 数据库可以直观地理解为存放数据的仓库。数据库可以直观地理解为存放数据的仓库。只不过这个仓库是在计算只不过这个仓库是在计算机的大容量存储器上,例如硬盘就是一种最常见的计算机大容量存储设备。机的大容量存储器上,例如硬盘就是一种最常见的计算机大容量存储设备。而且数据必须按一定的格式存放,因为它不仅需要存放,而且还要便于查而且数据必须按一定的格式存放,因为它不仅需要存放,而且还
13、要便于查找。找。数据是被长期存放在计算机内、有组织的、可以表现为多种形式的可数据是被长期存放在计算机内、有组织的、可以表现为多种形式的可共享的数据集合。数据库技术使数据能按一定格式组织、描述和存储,且共享的数据集合。数据库技术使数据能按一定格式组织、描述和存储,且具有较小的冗余度,较高的数据独立性和易扩展性,并可为多个用户共享。具有较小的冗余度,较高的数据独立性和易扩展性,并可为多个用户共享。4.4.数据库管理系统数据库管理系统 数据库管理系统(数据库管理系统(DataBase Management System,简称简称DBMS)是计算机系统软件,它的职能是有效地组织和)是计算机系统软件,它
14、的职能是有效地组织和存储数据、获取和管理数据,接受和完成用户提出的访问数存储数据、获取和管理数据,接受和完成用户提出的访问数据的各种请求。据的各种请求。5.5.数据库系统数据库系统 数据库系统是拥有数据库技术支持的计算机系统,它可数据库系统是拥有数据库技术支持的计算机系统,它可以实现有组织地、动态地存储大量相关数据,提供数据处理以实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享服务。和信息资源共享服务。数据库系统不仅包括数据本身,还包数据库系统不仅包括数据本身,还包括相应的硬件、软件和各类人员。括相应的硬件、软件和各类人员。数据库系统由四部分组成:硬件系统、系统软件(包括操数据
15、库系统由四部分组成:硬件系统、系统软件(包括操作系统和数据库管理系统)、数据库应用系统和各类人员。作系统和数据库管理系统)、数据库应用系统和各类人员。1.1.1.3 1.1.1.3 数据库系统的组成数据库系统的组成数据库应用系统数据库应用系统图图1-4 数据的数据库系统数据的数据库系统数据库管理系统数据库管理系统操作系统操作系统硬件硬件应用程序数据库管理系统操作系统数据库数据库管理员数据库系统组成示意图数据库系统组成示意图用户用户用户计算机硬件系统 数据库、数据库管理系统和数据库系统之间的区别和联系: 用户通过数据库管理系统可以建立和使用数据库。 使用数据库是目的,而数据库管理系统是实现目的的
16、手段和工具。 数据库和数据库管理系统都是数据库系统的组成部分。在数据库系统中通过数据库管理系统来建立和使用数据库。在数据库系统中通过数据库管理系统来建立和使用数据库。负责数据库存取、维护、管理的系统软件系统软件,是用户与DB之间的接口。 数据库定义功能 数据库操作功能 数据库查询功能 数据库控制功能 数据库通信功能常见的DBMS有:DB2、Informix、Oracle、Sybase、VFP、Access、SQL Server、 MySQL具备的功能数据库管理系统数据库管理系统DBMSn实现数据共享,减少数据冗余。n采用特定的数据模型。n具有较高的数据独立性。n有统一的数据控制功能。1.1.1
17、.4 1.1.1.4 数据库系统的特点数据库系统的特点1.1.2 1.1.2 数据模型数据模型 信息来源于客观事物,经过人们的加工处理,再用来控制和改造客观事物。数据库不仅要反映数据本身的内容,而且要反映数据之间的联系。由于计算机不可能直接处理现实世界中的具体事物,所以人们必须事先把具体事物转换成计算机能够处理的数据,这个转换过程可以分为:三个阶段 现实世界现实世界 信息世界信息世界 数据世界数据世界两个抽象 现实世界到信息世界的抽象 信息世界到数据世界的抽象现实世界现实世界事物及联系事物及联系事物事物对象对象性质性质信息世界信息世界概念模型概念模型实体实体对象对象属性属性(抽象)(抽象)数据
18、世界数据世界数据模型数据模型数据数据记录记录字段字段(数据表示)(数据表示) 数据模型(Data Model)是在数据库领域中定义数据及其操作的一种抽象表示。即用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息,通俗地说,数据模型就是现实世界的模拟。 数据模型应该满足三方面要求: 能比较真实地模拟现实世界 容易为人所理解 便于在计算机上实现 数据模型的组成: 实体及实体间联系的数据结构描述 数据结构用于描述系统的静态特性,是刻画一个数据模型性质最重要的方面。因此通常按数据结构的类型来命名数据模型。 对(表示实体和联系的)数据的操作 数据操作用于描述系统的动态特性,是指对数据库中各对象(
19、类)的实例允许执行的操作的集合,包括操作及相关的操作规则。 数据的完整性约束条件 约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。数据模型的类型: 概念数据模型(概念模型) 这是面向客观世界、面向用户的数据模型。这类数据模型是按用户的观点建模,描述用户和设计者都能理解的信息结构,强调其表达能力和易理解性,如E-R模型。 逻辑数据模型(数据模型) 这是面向数据库管理系统的,用以刻画实体在数据库中的存储形式及实体之间的联系的数据模型,它是按计算机系统的观点对数据建模。如:层次
20、模型、网状模型、关系模型、面向对象模型。概念模型是现实世界到数据世界的一个中间层次,是按用户的观点对数据建模,它是现实世界到信息世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。1.1.2.1 1.1.2.1 概念数据模型概念数据模型广泛使用的概念模型当属“实体联系”模型,即E-R模型。1 E-R1 E-R模型的基本概念模型的基本概念(1 1)实体)实体 是客观存在的并可以相互区别的事物。 实体可以是具体的对象(如学生、书等),也可以是抽象的对象(如一次选课、教师与系的关系等)。 具有相同性质的实体集合称为实体集。实体集中的实体借助实体标识符(key 关键字)加以区别(如学号)。(2
21、 2)联系)联系 是实体集之间关系的抽象表示。 1 : 1 对于实体集A中的每一个实体,实体集B中至多有一个实体与之有联系;反之亦然。 例如:公民集合与身份证号集合、学生集合与学号集合。 1 : m 对于实体集A中的每一个实体,实体集B中有n个(n0)实体与之有联系;反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系。 例如: 专业集合与学生集合、学生集合与成绩集合。 m : n 对实体集A中的每一个实体,实体集B中有n个(n0)实体与之有联系;反之,对实体集B中的每一个实体,实体集A中有m个(m0)实体与之有联系。 例如: 学生集合与选课集合、专业集合与课程集合。(3 3)
22、属性)属性 实体或联系所具有某一特性。 一个实体可以由多个属性来描述,即实体可能用属性集来表示。例如: 学生的属性包括:学号、姓名、性别、出生年月、专业等。2 E-R2 E-R图图 E-R图是E-R模型的图形表示法,它是直接表示概念模型的有力工具。 在E-R图中,用矩形表示实体集,菱形框表示联系,椭圆形框表示属性。 需要注意的是:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要与该联系连接起来。成绩考试学生学号姓名学号课程1 1m m考试类别n层次模型n网状模型n关系模型n面向对象模型 1.1.2.2 1.1.2.2 逻辑数据模型逻辑数据模型在数据库中,满足以下两个条
23、件的数据模型称为层次模型:(1)有且仅有一个结点无父结点,这个结点称为根结点;(2)其他结点有且仅有一个父结点。在层次模型中,结点层次从根开始定义,根为第一层,根的子结点为第二层,根为其子结点的父结点,同一父结点的子结点称为兄弟结点,没有子结点的结点称为叶结点。 层次模型对具有一对多层次关系的描述非常自然、直观、容易理解。层次模型对具有一对多层次关系的描述非常自然、直观、容易理解。学 院B系A系C系教研室B教研室A专业A专业B专业C教师B教师A教师C层次模型示意图层次模型层次模型网状模型网状模型网状模型表示多对多的联系。在数据库中,满足以下两个条件的数据模型称为网状模型:(1)允许一个以上的结
24、点无父结点;(2)一个结点可以有多于一个的父结点。网状模型允许一个以上的结点无父结点或某一个结点有一个以上的父结点,网状模型允许一个以上的结点无父结点或某一个结点有一个以上的父结点,从而构成了比层次结构复杂的网状结构。从而构成了比层次结构复杂的网状结构。院、系教研室学生宿舍教师学生课程网络模型示意图关系模型关系模型关系模型中,数据的逻辑结构是一张二维表。在数据库中,满足下列条件的二维表称为关系模型:(3NF)(1)每一列中的分量是类型相同的数据;(2)列的顺序可以是任意的;行的顺序可以是任意的;(3)表中的分量是不可再分割的最小数据项,即表中不允许有子表:(4)表中的任意两行不能完全相同。Re
25、cNo RecNo StudID StudID Name Name Sex Sex Birthday Birthday EntrancescorEntrancescore e 1 1981101 981101 赵文化赵文化 男男 2-28-80 2-28-80 500 500 2 2981102 981102 徐逸华徐逸华 男男 6-7-81 6-7-81 630 630 3 3981103 981103 郭茜茜郭茜茜 女女 11-17-82 11-17-82 650 650 4 4981201 981201 钱钱 途途 男男 5-1-80 5-1-80 380 380 5 5981202 9
26、81202 高高 涵涵 男男 11-06-80 11-06-80 630 630 6 6981203 981203 李晓鸣李晓鸣 女女 11-17-82 11-17-82 400 400 StudentStudent表表 关系模式是对关系结构的描述,它包括:模式名和组成该关系的诸属性名。 关系模型要求关系的每一个属性必须是不可再分的数据项。 关系数据库采用了关系模型作为数据的组织方式,这就涉及到关系模型中的一些基本概念。另外,对关系数据库进行查询时,若要找到用户关心的数据,就需要对关系进行一定的关系运算。1.1.3 1.1.3 关系数据库关系数据库关系:关系:一个关系就是一张二维表,每个关系有
27、一个关系名。在计算机中,一个关系可以存储为一个文件。在Visual FoxPro中,一个关系就是一个表文件。属性:属性:二维表中垂直方向的列称为属性,有时也叫做一个字段。域:域:一个属性的取值范围叫做一个域。元组:元组:二维表中水平方向的行称为元组,有时也叫做一条记录。分量:分量:元组中的一个属性值叫做元组的一个分量。关系模式:关系模式:是对关系的描述,它包括关系名、组成该关系的属性名、属性到域的映像。通常简记为:关系名(属性名1,属性名2,属性名n)属性到域的映像通常直接说明为属性的类型、长度等。1.1.3.1 1.1.3.1 关系数据库的基本概念关系数据库的基本概念 表1-1中的关系是一个
28、学生基本情况表。表中的每一行是一条学生记录,是关系的一个元组,Studid(学号)、Name(姓名)、Sex(性别)、Birthday(出生日期)、Entrancescore(入学成绩)等均是属性。其中学号是唯一识别一条记录的属性,因此称为主码。对于学号这一属性,域是“000001”“999999”,对于姓名属性,域是由24个汉字组成的字符串,对于性别属性,域是“男”、“女”。 学生基本情况表的关系模式可记为: Student(Studid,Name,Sex,Birthday,Entrancescore)RecNoRecNo StudID StudID Name Name Sex Sex Bi
29、rthday Birthday Entrancescore Entrancescore 1 1981101 981101 赵文化赵文化 男男 2-28-80 2-28-80 500 500 2 2981102 981102 徐逸华徐逸华 男男 6-7-81 6-7-81 630 630 3 3981103 981103 郭茜茜郭茜茜 女女 11-17-82 11-17-82 650 650 4 4981201 981201 钱钱 途途 男男 5-1-80 5-1-80 380 380 5 5981202 981202 高高 涵涵 男男 11-06-80 11-06-80 630 630 6 6
30、981203 981203 李晓鸣李晓鸣 女女 11-17-82 11-17-82 400 400 表表1-1 Student1-1 Student表表由于二维表中不允许出现相同的记录,因此,表中的一列或若干列能够区分不同的记录,或者说能够惟一地确定记录。 例:二维表中的字段名为: 学号、学号、姓名、性别、年龄、籍贯、家庭地址、专业、班级。姓名、性别、年龄、籍贯、家庭地址、专业、班级。 超关键字 二维表中能惟一确定记录的一个列或几个列的组合称“超关键字”。单一的列构成的关键字称“单一关键字”,否则称“合成关键字”。 超关键字虽然能惟一地确定记录,但其所含的字段可能有多余的。 候选关键字 如果一
31、个超关键字去掉其中任何一个字段后不再能惟一确定记录,则称该超关键字为“候选关键字”。 候选关键字既能惟一确定记录,它包含的字段又是最精练的。 一张二维表中总存在超关键字,因而也必然存在候选关键字,且至少存在一个候选关键字。关键字关键字 主关键字 主关键字是从二维表的候选关键字中确定的,对于表中的每一个记录来说,主关键字必须包含一个不同于其它记录的惟一的值。 主关键字不能为空,否则失去其意义;如果一个字段不能构成主关键字,可以由多个字段构成。 外部关键字 当一张二维表(A表)的主关键字包含在另一张二维表(B表)中时,A表的主关键字称为B表的外部关键字。学学 号号姓姓 名名专专 业业A A 表表
32、学生表学生表学学 号号课课 程程成成 绩绩B B表表 成绩表成绩表 A表的学号即为B表的外部关键字。注意:B表中的“学号”不一定能惟一确定记录。准考证号准考证号身份证号身份证号姓名姓名性别性别出生日期出生日期工作单位工作单位电话号码电话号码250199990001420106701201396赵赵 娜娜女女12/01/70南京理工大学南京理工大学87874532250199990002420102730415317李李 小军小军男男04/15/73东南大学东南大学82835762超关键字: 准考证号+身份证号+姓名 准考证号+身份证号候选关键字:准考证号 身份证号主关键字:准考证号外部关键字:
33、准考证号准考证号准考证号姓名姓名性别性别出生日期出生日期笔试成绩笔试成绩上机成绩上机成绩总分总分250199990001赵赵 娜娜女女12/01/708592177250199990002李李 小军小军男男04/15/737380153 在数据库结构设计中,应该指出各张二维表的主关键字。如果主关键字过于复杂,通常增设一个字段,用这一字段来惟一确定记录,用此字段作为单一主关键字。 大多数二维表中,只有一个候选关键字;在一些复杂的表可能存在多个候选关键字。一般应用中,只需一个候选关键字,并将它作为主关键字。关系的规范化关系的规范化 用关系模型管理数据时,虽然与传统的数据文件有类似之处,但它们又有严
34、格的区别。严格地说,关系是一种规范化了的二维表,具有以下性质: 关系的每一个属性必须是不可再分的数据项;关系的每一个属性必须是不可再分的数据项; 二维表的记录数随数据的增删而改变,但它的字段数是二维表的记录数随数据的增删而改变,但它的字段数是相对固定的。因此,字段的个数、名称、类型、长度等要素相对固定的。因此,字段的个数、名称、类型、长度等要素决定了二维表的结构;决定了二维表的结构; 二维表中的每一列均有惟一的字段名,且取值是同性质二维表中的每一列均有惟一的字段名,且取值是同性质的;的; 二维表中不允许出现完全相同的两行;二维表中不允许出现完全相同的两行; 二维表中行的顺序和列的顺序均可任意交
35、换。二维表中行的顺序和列的顺序均可任意交换。 现实世界中的许多实体及其联系,可以用多种关系(即二维表)形式来表示,但往往会存在一些不利于数据处理的不规范的关系。其主要表现在: 数据冗余度大数据冗余度大 更新异常更新异常 插入异常插入异常 删除异常删除异常 在设计关系模型时,必须分析实体联系和属性联系,尽可以地将互相依赖密切的属性构成单独的关系模式,避免将关系不密切,甚至是毫无联系的属性硬凑在一起。 关系的规范化即对关系模式应当满足的条件的某种处理,其主要目的是尽可能地减少数据冗余、消除异常现象、增强数据独立性、便于用户使用。N#N#C#C#CNCNCACAB#B#BNBNPUPUUPUPQAQ
36、A00010001 025001025001单位单位A A地址地址A A 7-04-100592-67-04-100592-6PCPC技术技术高教高教42.8042.80 505000020002 025001025001单位单位A A地址地址A A 7_302-03464-27_302-03464-2数据库教程数据库教程清华清华36.2036.20 404000030003 025001025001单位单位A A地址地址A A 7-81037-339-07-81037-339-0计算机基础计算机基础苏大苏大20.0020.00 10010000040004 032202032202单位单位B
37、 B地址地址B B 7-04-100592-67-04-100592-6PCPC技术技术高教高教42.8042.80 50050000050005 032202032202单位单位B B地址地址B B 7-81037-339-07-81037-339-0计算机基础计算机基础苏大苏大20.0020.00 500500N_C_B(N#,C#,CN,CA,B#,BN,PU,UP,QA)图书订单记录图书订单记录N#N#C#C#B#B#QAQA000100010250010250017-04-100592-67-04-100592-65050000200020250010250017_302-03464
38、-27_302-03464-24040000300030250010250017-81037-339-07-81037-339-0100100000400040322020322027-04-100592-67-04-100592-6500500000500050322020322027-81037-339-07-81037-339-0500500C#C#CNCNCACA025001025001单位单位A A地址地址A A032202032202单位单位B B地址地址B BB#B#BNBNPUPUUPUP7-04-100592-67-04-100592-6PCPC技术技术高教高教42.8042
39、.807_302-03464-27_302-03464-2数据库教程数据库教程清华清华36.2036.207-81037-339-07-81037-339-0计算机基础计算机基础苏大苏大20.0020.00C(C#,CN,CA)B(B#,BN,PU,UP)N(N#,C#,B#,QA) 对关系数据库进行查询时,若要找到用户关心的数据,就需要对关系进行一定的关系运算。关系运算有两种:n 传统的集合运算(并、差、交等);n 专门的关系运算(选择、投影、连接)。 传统的集合运算(并、差、交)不仅涉及关系的水平方向(即二维表的行),而且涉及关系的垂直方向(即二维表的列)。 关系运算的操作对象是关系,运算
40、的结果仍为关系。1.1.3.2 1.1.3.2 关系运算关系运算 并并 关系R与关系S的并由属于R或属于S的元组组成,即并运算的结果是R中元组加上S中元组。A班集合B班集合A班和B班的集合 差差 关系R与关系S的差由属于R但不属于S的元组组成,即差运算的结果是R中去除S中也有的元组。A班集合A和B班男生集合A班女生集合 交交 关系R与关系S的交由属于R且属于S的元组组成,即交运算的结果是R和S中都有的元组。A班集合A和B班男生集合A班男生集合选择选择 选择运算即在关系中选择满足某些条件的元组。也就是说,选择运算是在二维表中选择满足指定条件的行。例如,在Student(学生基本情况)表中,若要找
41、出所有女学生的元组,就可以使用选择运算来实现,条件是:Sex=“女”。选择是对关系的水平分解,其结果是关系R的一个子集。投影投影 投影运算是在关系中选择某些属性列。例如,在Student(学生基本情况)表中,若要仅显示所有学生的Studid(学号)、Name(姓名)和Sex(性别),那么可以使用投影运算来实现。投影运算的结果是得到一个新的关系,它包含的属性个数通常比原关系少。联接联接 联接是两个关系的横向结合。 联接运算是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。 OracleOracle 产品覆盖大、中、小型机等几十种机型,是世界上使用最广泛的大型数据库管理系统之一。 DB2DB2
42、 IBM公司为UNIX、OS/2和Windows NT操作系统环境提供的关系型数据库解决方案。 SybaseSybase Sybase公司1992年开发的一个面向联机事务处理,具有高性能、高可靠性的功能强大的关系型数据库管理系统。 MS-SQL ServerMS-SQL Server 微软公司推出的在Windows平台上最为流行的中型的关系型数据库管理系统。 AccessAccess 一个关系型数据库管理系统,是Office软件包的一个组成部分。 Visual FoxProVisual FoxPro PC机的数据库管理系统经历了dBase、FoxBase到FoxPro的演变过程。Microso
43、ft公司在收购Fox公司后,在FoxPro基础上引入可视化操作环境和面向对象的程序技术,推出了Visual FoxPro。1.1.4 主流的主流的DBMS产品产品1.2 Visual FoxPro 6.01.2 Visual FoxPro 6.0概述概述名称名称运行环境运行环境公司名称公司名称发布时间发布时间dBASEDOSAshton-TateFoxbase1.0DOSFox软件公司软件公司1987.2Foxbase+(2.00/2.10)DOSFox软件公司软件公司1987.7/88.7Foxpro1.0DOSFox软件公司软件公司1989FoxPro2.0DOSFox软件公司软件公司19
44、91FoxPro2.5DOS/Windows3.X微软公司微软公司1993.1FoxPro2.6DOS/Windows3.X微软公司微软公司1994Visual FoxPro3.0Windows 3.X微软公司微软公司1996.1Visual Foxpro5.0Windows 95微软公司微软公司1997.2Visual FoxPro6.0Windows 98微软公司微软公司1998.1Visual FoxPro7.0Windows微软公司微软公司2002Visual FoxPro8.0Windows微软公司微软公司20031.2.1 Visual FoxPro1.2.1 Visual Fox
45、Pro操作环境操作环境启动:利用启动:利用“开始开始”菜单启动菜单启动Visual FoxPro 6.0Visual FoxPro 6.0。1.2.1.1 1.2.1.1 启动和退出启动和退出Visual FoxPro 6.0Visual FoxPro 6.0退出退出Visual FoxPro 6.0Visual FoxPro 6.0通常可以采用以下四种方式:通常可以采用以下四种方式:n 从从“文件文件”菜单中选择菜单中选择“退出退出”命令。命令。n 单击工作窗口右上角的单击工作窗口右上角的“关闭关闭”按钮。按钮。n 在命令窗口中键入在命令窗口中键入“QuitQuit”命令。命令。n 双击工作
46、窗口左上角的控制菜单图标。双击工作窗口左上角的控制菜单图标。Visual FoxPro 6.0Visual FoxPro 6.0的工作环境主要由标题栏、菜单栏、的工作环境主要由标题栏、菜单栏、工具栏、命令窗口、结果显示区工具栏、命令窗口、结果显示区( (主窗口主窗口) )以及状态栏构成。以及状态栏构成。 1.2.1.2 Visual FoxPro 6.01.2.1.2 Visual FoxPro 6.0工作环境工作环境图2-1 Visual FoxPro 6.0工作环境Visual FoxPro 6.0在启动时通常使用默认值设置系统工作环境。设置Visual FoxPro 6.0的工作环境可以
47、采用两种方式:临时设置和永久设置。临时设置的工作环境只在当前工作期有效,也就是说临时设置的工作环境仅保存在内存中,在退出Visual FoxPro 6.0时即被释放。永久设置的工作环境将保存在Windows注册表中,下次启动Visual FoxPro 6.0时将作为默认值生效。1.2.1.3 1.2.1.3 配置配置VFPVFP工作环境工作环境使用“选项”命令可以临时设置或永久设置系统的工作环境。若要使用“选项”命令设置系统工作环境,应按下列步骤操作:(1)从“工具”菜单中选择“选项”命令,系统弹出“选项”对话框。(2)在“选项”对话框中选择适当的选项卡。(3)在指定的选项卡中选择需要设置的选
48、项。(4)若要永久设置系统的工作环境,应单击“设置为默认值”按钮。(5)最后单击“确定”按钮。使用使用“选项选项”命令命令在Visual FoxPro 6.0中,可以使用SET命令设置临时系统工作环境。SET命令通常在程序中使用,也可以在命令窗口中执行。使用使用SETSET命令命令SET命令命令 命令功能命令功能 SET STATUS BAR ON|OFF 是否显示状态栏是否显示状态栏 SET TALK ON|OFF 是否显示命令执行的结果是否显示命令执行的结果 SET CLOCK ON|OFF 是否显示时钟是否显示时钟 SET BELL ON|OFF 是否发出警告声音是否发出警告声音 SET
49、 ESCAPE ON|OFF 用户按用户按【Esc】键时是否取消程序运行键时是否取消程序运行 SET SAFETY ON|OFF 是否打开系统的安全性检查是否打开系统的安全性检查 SET EXCLUSIVE ON|OFF 数据库是否以独占方式打开数据库是否以独占方式打开 常用的常用的SET命令命令 SET命令命令 命令功能命令功能 SET DELETED ON|OFF 是否忽略已作删除标记的记录是否忽略已作删除标记的记录 SET EXACT ON|OFF 是否精确地对是否精确地对2个字符串进行比较个字符串进行比较 SET LOCK ON|OFF 是否自动对文件进行加锁是否自动对文件进行加锁 S
50、ET MULTILOCKS ON|OFF 是否一次可对多条记录加锁是否一次可对多条记录加锁 SET DEFAULT TO cPath 设置默认的工作目录设置默认的工作目录 SET PATH TO cPath 设置搜索路径设置搜索路径 SET HELP TO FileName 设置帮助文件以替代系统帮助设置帮助文件以替代系统帮助 SET DATE TO 设置日期格式设置日期格式 SET CENTURY ON|OFF 显示日期时,年号是否以显示日期时,年号是否以4位数显示位数显示 SET HOURS TO 12|24 设置时间以设置时间以12或或24小时的格式显示小时的格式显示 SET SECON
51、DS ON|OFF 显示时间时,确定是否显示秒显示时间时,确定是否显示秒 SET MARK TO cDelimiter 设置日期分隔符设置日期分隔符 SET DECIMALS TO nDecimalPlaces 设置数值显示时的小数位数设置数值显示时的小数位数 续表续表2-1 命令的表述遵循以下的约定: 斜体字 命令的一个语法成分,由用户定义 方括号 该语法成分在命令中是可选项 省略号 前一语法成分可重复多次 竖线 前后语法成分选择其一例如: DELETE FILE FileName | ? RECYCLE1.2.3 VFP1.2.3 VFP命令的语法格式说明命令的语法格式说明 当光标在命令行
52、上的任意处,按回车键后,该命令即被执行。 一条命令通常占一行,若把一条命令分成若干行,则在每行(最后一行除外)的末尾加 “ ;” ;在命令窗口中,按Ctrl+Enter键可实现换行输入;执行时,光标可在任意一行上,然后按回车键。 绝大多数命令中的关键字均可用其前四个字符代替;命令后面可以用“ & ”引导命令的注解,即:命令中“ & ”后的字符是不会被执行的。 * 和和 &功能功能:在程序文件中引导注释内容。:在程序文件中引导注释内容。说明说明: 两者的区别在于:两者的区别在于: * * 必须为命令行的第一个字符,且将整个命令行定义为注释的内容;必须为命令行的第一个字符,
53、且将整个命令行定义为注释的内容; & & 可以用在其它命令的后面,将其后面的字符定义为注释内容。可以用在其它命令的后面,将其后面的字符定义为注释内容。几个常用的几个常用的VFPVFP命令命令 ? 和和 ?格式格式: ? | ? ? | ? 表达式表达式1 1 ,表达式表达式2 2 功能功能:在:在VFPVFP主窗口中显示表达式的值。主窗口中显示表达式的值。说明说明: 使用使用 ? ? 命令时,在输出一个换行符后再输出表达式的值;命令时,在输出一个换行符后再输出表达式的值; 使用使用 ? ? 命令时,不输出换行符,直接输出表达式的值。命令时,不输出换行符,直接输出表达式的值。 C
54、LEAR格式格式: CLEARCLEAR功能功能:用于清除当前:用于清除当前VFPVFP主窗口中的信息,使下一次显示时,从窗口的左主窗口中的信息,使下一次显示时,从窗口的左上角开始。上角开始。 RUN格式格式:RUN / N RUN / N DOS CommandDOS Command | | ProgramNameProgramName功能功能:调用外部的:调用外部的DOSDOS命令或应用程序命令或应用程序说明说明: / N/ N 表示可以执行另一个表示可以执行另一个WindowsWindows应用程序,否则先进入应用程序,否则先进入DOSDOS状态窗口,状态窗口,再执行应用程序;再执行应用
55、程序; DOS CommandDOS Command和和ProgramNameProgramName分别指分别指DOSDOS命令和应用程序名。命令和应用程序名。 Run /N CalcRun /N Calc QUIT格式格式:QUITQUIT功能功能:关闭所有:关闭所有VFPVFP文件,并结束文件,并结束VFPVFP的运行。的运行。 DIR格式格式: DIR DIR PathPath FilenameFilename 功能功能:在:在VFPVFP主窗口中显示文件的目录。主窗口中显示文件的目录。说明说明: PathPath 和和 filenamefilename 分别是指定文件的路径和文件名。分
56、别是指定文件的路径和文件名。 PathPath 缺省是指当缺省是指当前目录;前目录; 文件名应包括主文件名和扩展名,若扩展名缺省,是指表文件(文件名应包括主文件名和扩展名,若扩展名缺省,是指表文件(.dbf.dbf);); 文件名中可以含通配符。文件名中可以含通配符。 MD | RD | CD格式格式: MD | RD MD | RD PathPath CD CD Path Path 功能功能: MD MD 创建一个文件夹创建一个文件夹 RD RD 删除一个文件夹删除一个文件夹 CD CD 将当前目录改为指定的文件夹将当前目录改为指定的文件夹说明说明: PathPath可以是绝对路径,也可以是
57、相对路径,必要时还可以包含盘符;可以是绝对路径,也可以是相对路径,必要时还可以包含盘符; 用用RDRD命令删除一个文件夹时,该文件夹必须是空文件夹;命令删除一个文件夹时,该文件夹必须是空文件夹; 不带不带PathPath参数的参数的CDCD命令,将显示当前路径。命令,将显示当前路径。 COPY FILE | RENAME | DELETE FILE格式格式: COPY FILE COPY FILE FileName1FileName1 TO TO FileName2FileName2 RENAME RENAME FileName1FileName1 TO TO FileName2FileNam
58、e2 DELETE FILE DELETE FILE FileName FileName | ? RECYCLE | ? RECYCLE 功能功能:复制文件、文件重命名、删除文件:复制文件、文件重命名、删除文件说明说明: 文件名中可以含通配符、文件所在的盘符和路径(缺省时指当前路文件名中可以含通配符、文件所在的盘符和路径(缺省时指当前路径),且径),且文件必须被关闭文件必须被关闭; RENAMERENAME命令前后的文件说明若不位于同一磁盘或文件夹,则对文件命令前后的文件说明若不位于同一磁盘或文件夹,则对文件改名的同时,移动文件;改名的同时,移动文件; DELETEDELETE命令中的命令中的
59、RECYCLERECYCLE指回收站,选择指回收站,选择? ?选项,则弹出文件浏览对选项,则弹出文件浏览对话框,供查找文件。话框,供查找文件。1.2.4 Visual FoxPro 6.01.2.4 Visual FoxPro 6.0的文件类型的文件类型在在Visual FoxPro 6.0Visual FoxPro 6.0中,文件大体上可以分为三大类:中,文件大体上可以分为三大类:VFP主要文件类型主要文件类型扩展名扩展名文件类型文件类型扩展名扩展名文件类型文件类型.MEM内存变量保存内存变量保存.SCX表单表单.PJX项目项目.SCT表单备注表单备注.PJT项目备注项目备注.FRX报表报表
60、.DBC数据库数据库.FRT报表备注报表备注.DCT数据库备注数据库备注.LBX标签标签.DCX数据库索引数据库索引.LBT标签备注标签备注.DBF表表.VCX可视类库可视类库.FPT表备注表备注.VCT可视类库备注可视类库备注.CDX复合索引复合索引.MNX菜单菜单.IDX单索引单索引.MNT菜单备注菜单备注.QPR生成的查询程序生成的查询程序.MPR生成的菜单程序生成的菜单程序.QPX编译后的查询程序编译后的查询程序.MPX编译后的菜单程序编译后的菜单程序.PRG程序程序.EXE可执行程序可执行程序.FXP编译后的程序编译后的程序.APP生成的应用程序生成的应用程序数据库文件是用来存储数据库数据的文件。主要有数据库容器文件、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工不同意协商解除劳动合同
- 2026年保定电力职业技术学院单招职业倾向性考试必刷测试卷附答案
- 河北省非高危行业生产经营单位主要负责人安全生产培训参考试题库(附答案)
- 2025年品质标准培训题库及答案
- 人保理赔笔试真题及答案
- 东莞中考语文试卷及答案
- 2025-2030民办心理咨询培训行业市场潜力与投资风险分析
- 2025-2030民办幼儿园行业市场格局及竞争策略研究报告
- 2025-2030民办学校食堂运营管理模式与食品安全报告
- 2025-2030民办学校智慧校园建设投入产出分析报告
- API RP 17A-2022 海底生产系统的设计和操作-一般要求和建议
- 骨折合并老年痴呆的护理
- 门诊服务窗口管理制度
- 3-国家基本公共卫生服务规范-高血压健康管理课件
- 汽车售后服务企业经营与管理 课件 项目四 汽车维修配件管理
- 柞绢绸项目投资可行性研究分析报告(2024-2030版)
- 应急第一响应人理论考试试卷(含答案)
- 新《行政许可法》知识考试题库(100题)
- 初一心理教育主题
- 第2课时原子核外电子的排布离子的形成九年级化学上册课件(人教版)
- 格力家用空调焊接安全
评论
0/150
提交评论