VisualFoxpro基础(一).ppt_第1页
VisualFoxpro基础(一).ppt_第2页
VisualFoxpro基础(一).ppt_第3页
VisualFoxpro基础(一).ppt_第4页
VisualFoxpro基础(一).ppt_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,数据库原理及应用,授课:李顺 QQ:1067404563 手机E-mail:,2,数据库管理系统,Access Visual Foxpro(本课程使用) SQL Server mySQL Oracle DB2 ,3,Visual Foxpro目前的最高版本是9.0, MICROSOFT 已经不打算再对VFP进行升级之类的事情。 全国计算机等级考试二级VFP目前仍使用VFP6.0,4,教材: Visual FoxPro实用教程与上机指导 马秀峰等编,北京大学出版社 参考书: 全国计算机等级考试二级教程-Visual FoxPro数据库程序设计,5,第1章 Visual Foxpro基础(一),本次课内容: 1.1 数据库的基本概念 1.2 数据模型 1.3 关系运算,6,1.1 数据库的基本概念,1.1.1 数据与信息 1 )数据的概念 数据是指存储在某种媒体上能够被识别的物理符号。(数据内容+数据形式) 2)信息的概念 信息是对人们有用的、能够影响人们行为的数据,它对接受者的决策或行为有现实或潜在的价值。信息是通过对数据进行处理而产生的。,7,3)数据处理 指将数据转换成信息的过程。数据处理的基本目的是从大量的、杂乱无章的、难以理解的数据中整理出对人们有价值、有意义的数据(即信息)。,8,4)计算机中的数据处理 使用计算机外存储器(如磁盘)来存储数据,通过计算机软件来管理、加工和分析数据。,9,5)数据与信息的关系 数据是信息的载体,信息是通过数据符号来传播的。信息就是有用的数据,信息是数据加工的结果。数据如果不具有知识性和有用性,则不能够被称为信息。,10,计算机数据管理技术的发展经历了三个阶段:,人工管理阶段(20世纪50年代中期以前) 文件系统阶段( 20世纪50年代后期到60年代后期) 数据库系统阶段( 20世纪60年代后期以来),1.1.2 计算机数据管理技术的发展,11,1)人工管理阶段,计算机主要应用于科学计算。 外存储器只有卡片、纸带、磁带,没有像磁盘这样的可以随机访问、直接存取的外部存储设备。 软件方面,没有专门管理数据的软件。数据管理的任务完全由程序设计人员自负其责。 程序与数据不具有独立性。数据由计算或处理它的程序自行携带。程序与数据是一个整体,数据称为程序的一部分(如,基本basic里有个 data语句,专门存放数据用)。一个程序中的数据无法被其他程序利用,程序与程序之间存在大量的重复数据,称为数据冗余。,12,2)文件系统阶段,文件系统提供了在外存储器上长期保存数据并对数据进行存取的手段。 在文件系统阶段,程序和数据有了一定的独立性,将数据与程序分开存放,有了程序文件与数据文件的区别,数据文件可以长期保存在外存上被多次存取。所有文件由文件系统进行统一管理和维护。 在文件系统的支持下,程序只需用文件名访问数据文件,不必关心记录在存储器上的地址和内、外存储器交换数据的过程。 文件系统中的数据文件是为了满足特定业务领域或某部门的专门需要而设计的,服务于某一特定应用程序,数据和程序相互依赖,同一数据项可能重复出现在多个文件中,导致数据冗余度大,缺乏数据独立性,数据无法集中管理,13,14,3)数据库系统阶段,从20世纪60年代后期开始,需要计算机管理的数据量急剧增长, 并且对数据共享的需求日益增强,文件系统的数据管理方法已 无法适应开发应用系统的需要.为了实现计算机对数据的统一 管理,达到数据共享的目的,发展了数据库技术. 数据库技术的主要目的是有效的管理和存取大量的数据资源, 包括:提高数据的共享性,使多个用户能够同时访问数据库中的 数据;减小数据的冗余度,以提高数据的一致性和完整性;提高数 据与应用程序的独立性,从而减少应用程序的开发和维护代价.,15,16,17,数据库的定义 数据库是在数据库管理系统的集中控制之下,按一定的组织方式存储起来的、相互关联的数据集合。(数据本身+数据之间的联系),1.1.3 数据库(DataBase)概念与特点,18,数据库的特点 数据的共享性:数据库中的数据能够为多个用户同时享用 数据的独立性:程序和数据真正分离,使他们能独立发展。,19,数据的完整性:数据库中的数据在操作和维护过程中可以保证正确无误。数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。 数据的冗余度小:尽可能避免数据的重复。,20,数据冗余示例,21,1.1.4 数据库管理系统和数据库系统,1)数据库管理系统(DBMS) 数据库管理系统的定义: 数据库管理系统是位于用户与操作系统之间的一层数据管理软件,它是建立在操作系统的基础上、对数据库进行统一管理的系统软件。如,Visual FoxPro 就是一个可以在计算机和服务器上运行的数据库管理系统.,22,数据库管理系统的功能 (1)数据定义功能:DBMS能向用户提供“数据定义语言”(DDL),用户通过它可以方便地对数据库中的数据对象进行定义,如建立或删除数据库、基本表和视图等。 (2)数据操作功能:DBMS向用户提供“数据操作语言” (DML),支持用户对数据库中的数据进行检索、查询、更新(包括增加、删除、修改)等操作。,23,(3)控制和管理功能:其中包括:在多用户使用时对数据进行的“并发控制”;对用户权限实施监督的“安全性检查”;数据的备份、恢复和转储功能;对数据库运行情况的监控和报告等。,24,2)数据库系统,数据库系统是指基于数据库的计算机应用系统。,数据库系统包括以下几部分: ( 1 )以数据为主体的数据库; ( 2 )管理数据库的系统软件DBMS; ( 3 )支持数据库系统的计算机硬件环境和操作系统平台; ( 4 )管理和使用数据库系统的人员,即用户和数据库管理员; ( 5)方便使用和管理系统的各种文档,25,数据库系统层次示意图P3 数据库应用系统:指系统开发人员利用数据库系统资源开发出来的、面向某一类实际应用的应用软件系统,例如以数据库为基础的财务管理系统、人事管理系统、图书管理系统等。 数据库管理员(DataBase Administrator,DBA):是负责全面管理和实施数据库控制和维护的技术人员。,26,数据结构化:数据库系统实现整体数据的结构化,即用二维表结构来逻辑表达数据.这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别. 数据共享 数据独立性 可控冗余度:数据冗余度是指在数据库中的数据重复程度,3)数据库系统的特点,27,安全性保护:数据安全性是指保护数据以防止不合法的使用所造成的数据破坏和泄密,例如设置访问权限、对数据加密等。 数据完整性控制:数据完整性是指数据的正确性、有效性和相容性。数据库系统提供了必要的功能,保证了数据在输入、修改过程中始终符合原来的数据定义和规定。 并发控制 故障发现和恢复控制,28,1.2 数据模型,29,1)实体 实体的概念 客观存在并且可以相互区别的事物称为实体。 实体可以是实际的事物,也可以是抽象的事件。,1.2.1 相关概念,30,实体的属性 描述实体的特性称为属性。 例如,学生实体用学号、姓名、性别、出生日期、专业等若干个属性来描述。 属性是个变量,属性值是变量所取的值,属性值的变化范围称做属性值的域。,31,实体型的概念 属性的集合表征了一种实体的类型,称为实体型. 实体集的概念 属性值所组成的集合表征一个具体的实体,如(2005051002,张艳,女,11/01/87,教育技术学)。同类型的实体的集合称为实体集,32,2)实体间联系 实体之间的对应关系称为实体间联系。例如,一位读者可以借阅若干本图书;同一本书可以相继被几个读者借阅。 实体间联系的种类是指一个实体集中可能出现的每一个实体与另一个实体集中多少个具体实体存在联系。实体间联系可以归结为3种类型:一对一联系(1:1)、一对多联系(1:n)、多对多联系(m:n),33,一对一联系:如果对于实体集A中的每一个实体,实体集B中有且只有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。(公司与总经理) 一对多联系:如果对于实体集A中的每一个实体,实体集B中有多个实体与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B具有一对多的联系。(部门与职工),34,多对多联系:如果对于实体集A中的每一个实体,实体集B中有多个实体与之联系,而对于实体集B中的每一个实体,实体集A中也有多个实体与之联系,则称实体集A与实体集B之间具有多对多的联系。(学生与课程),35,1.2.2现实世界中客观对象的抽象过程,机器世界,36,根据应用目的,模型分为两个层次: 概念模型(信息模型):从用户观点来看,要求概念简单,表达清晰,易于理解,是对现实世界的第一层抽象。 数据模型(层次、网状、关系):数据库管理系统用来表示实体及实体间的联系的方法。,37,1)概念模型(实体-联系模型ER),概念模型的表示方法最常用的是实体-联系方法(Entity-Relationship Approach),是P.P.S.Chen于1976年提出的,该方法是用E-R图来描述某一组织的概念模型。 E-R方法是抽象和描述现实世界的有力工具。 用E-R表示的概念模型与DBMS所支持的数据模型相独立,是各种数据模型的共同基础。,38,E-R图提供了表示实体型、属性和联系的方法 矩形:表示实体类型,矩形框内写明实体名。 椭圆形:表示实体类型和联系类型的属性,并用直线将其与相应的实体连接起来。 菱形:表示联系类型,菱形框内写明联系名,并用直线分别与有关实体连接起来。 直线:联系类型与其设计的实体类型之间以直线连接,并在直线端部标上联系的种类。,39,业务逻辑 该工厂有多间仓库,每个仓库可以存放多种零件,一种零件可以存在在多个仓库中。仓库用仓库号、面积、电话号码来表示;零件用零件号、名称、规格、单价、描述来表示。某种零件在某个仓库中的数量用库存量来表示 一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作。职工用职工号、姓名、年龄、职称描述,实例某工厂物资管理,40,职工之间具有领导与被领导关系。即仓库主任领导若干保管员 每个供应商可以为多个项目供应多种零件,每个项目可以有多名供应商使用多种零件,每种零件可以有多名供应商供应供多个项目使用。供应商用供应商号、姓名、地址、电话号码、帐号描述。项目用项目号、预算、开工日期描述。,41,概念模型设计 实体 仓库:仓库号、面积、电话号码 零件:零件号、名称、规格、单价、描述 供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称,42,43,1.2.3 数据模型,1)数据模型的概念 数据模型是数据库管理系统用来表示实体及实体间的联系的方法。,44,2)三种数据模型 数据模型应满足三方面要求:一是能比较真实地模拟现实世界;二是容易为人所理解;三是便于在计算机上实现。 到目前为止,在数据库系统中使用的数据模型主要有三种:层次模型、网状模型和关系模型。 上世纪80年代出现了对象模型,但纯粹基于对象模型的数据库系统并没有进入商业应用,实际系统多是与关系模型结合构成。,45,层次模型(树) 网状模型(图) 关系模型(表) 它们之间的根本区别在于数据之间的联系的表示方式不同。,46,层次数据模型,层次数据模型是用树形结构来表示实体及其之间的联系. 层次模型是一棵倒立的树,结点之间具有父子关系.建立层次模型需满足以下两个条件: 根唯一:只有一个结点没有父结点,这个结点即根结点 父唯一:根结点以外的结点有且仅有一个父结点。,47,层次模型的基本特征是: 一定有一个,并且只有一个位于树根的节点,称为根节点。 一个节点下面可以没有节点,即向下没有分支,该节点称为叶节点。 一个节点可以有一个或多个节点,前者称为父节点,后者称为子节点 同一父节点的子节点称为兄弟节点 除根节点外,其他任何节点有且只有一个父节点,48,层次数据模型示例,学院,教育技术系,传播学系,电子信息系,学生1,学生3,学生4,学生2,49,在一个学校中,每个系分为若干个专业,而每个专业只属于一个系.系与教师,专业与学生,专业与课程之间也是一对多的联系。,50,典型代表:IBM公司1968年研制的IMS数据库管理系统 优点:层次清晰、构造简单,易于实现。它可以比较方便的表示出一对一和一对多的实体联系 缺点:不能表示两个以上实体型之间的复杂联系和实体型之间的多对多的联系。,51,网状数据模型,网状模型用以实体型为结点的有向图来表示各实体及其之间的联系。它满足以下三个条件: 多根:可以有一个或一个以上的结点无父结点; 多父:至少有一个结点有多于一个的父结点; 多联系:允许两个结点间有两种以上的联系,即允许结点间有复合链。,52,网状数据模型示例,53,优点:能表示实体之间的多种复杂联系 缺点:编写应用程序比较复杂,需熟悉数据库的逻辑结构,54,网状模型和层次模型都是用指针来实现两个实体之间的联系的,它们都建立在图论的基础上,通常被称为格式化数据模型。,55,关系数据模型,1970年,美国E.F.Codd提出了关系模型的概念,首次运用数学方法来研究数据库的结构和数据操作。 关系数据模型是把数据的逻辑结构归结为满足一定条件的二维表模型。一个二维表就是一个关系,描述问题的所有二维表的集合就构成了一个关系数据模型。 关系数据模型的定义:用二维表(关系)的形式来表示实体和实体之间联系的数据模型。,56,student表,sc表,Course表,57,关系模型相关概念,关系:一个关系就是一张二维表; 元组:二维表中的一行(记录); 属性:二维表中的一列(字段);每个属性都有一个属性名,属性值则是各个元组属性的取值 域:属性的取值范围; 关键字:关系中一个属性或几个属性的组合,其值能唯一地标识一个元组;单个属性组成的关键字称为单关键字,多个属性组成的关键字称为组合关键字。关键字的属性值不能取“空值”,58,主关键字:如果一个关键字是用以区别每条记录的唯一性标志,并作为该表与其他表实现关联的,则称为主关键字或主码. 候选关键字:除主关键字以外的其他关键字称为候选关键字. 如某表,字段为: id firstname lastname address phone IDcard 那么id或IDcard或firstname+lastname都可以说是关键字。 其中id为主关键字,IDcard和firstname+lastname为候选关键字,59,外部关键字:关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,称此属性或属性组合为本关系的外部关键字.关系之间的联系是通过外部关键字实现的. 关系模式:对关系的描述称为关系模式,一个关系模式对应一个关系的结构。 其格式为:关系名(属性名1,属性名2,属性名n) 如, student(sno,sname,ssex,sage,sdept),60,关系数据库:采用关系模型构建的数据库叫做关系数据库(RDB,Relational Database).关系数据库由至少一个或多个数据表组成,各数据表之间可建立相互关系.,61,关系的性质,关系的每一列(每字段)中的数据类型必须相同; 一个关系(表)中不允许有重复的列名(字段名); 关系的行(记录)的次序及列(字段)的次序可任意排列; 关系中每个数据项(每列)是不可再分的数据单位; 关系的各行(各个记录)相异,不允许重复;,62,关系数据模型与Visual FoxPro数据库的对应,63,3)三种逻辑数据模型的比较,64,1.3 关系运算,关系的基本运算有两类:一类是传统的 集合运算(并、差、交);另一类是专门 的关系运算(选择、投影、联接),65,并:两个结构相同的关系所有元组相加 交:同时存在在两个结构相同的关系中的元组 差:R差S是指从R中去掉与S中相同的元组,R和S两个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论