资源预览内容
第1页 / 共34页
第2页 / 共34页
第3页 / 共34页
第4页 / 共34页
第5页 / 共34页
第6页 / 共34页
第7页 / 共34页
第8页 / 共34页
第9页 / 共34页
第10页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第1章 数据库系统概述教学目的: 1.掌握数据库、数据库系统、数据库管理系统的概念 2.掌握数据模型的概念、数据模型的分类 3.了解数据库管理技术的发展过程 教学重点:数据模型的特点,数据库系统的组成、关系数据库的特点及 相关运算。 教学难点:关系数据库的运算。引言Visual FoxPro是微机上流行的数据库管理系统,是一种支持面向 对象程序设计的可视化高级程序设计语言,所以通过学习Visual FoxPro 6.0程序设计可以作为学生掌握数据库管理和面向对象的程序 设计方法的必修课。 本课程的任务是使学生通过学习,掌握数据库管理和程序设计的基 本知识,学会管理和运用数据库,掌握使用 Visual FoxPro开发 Windows应用程序的思想和方法,能够设计简单的数据库应用系统。数据库技术涉及到许多基本概念,主要包括:信息、数据、数据 处理、数据库、数据库管理系统以及数据库系统等。 信息、数据现实 世界存在的客观事物在人们大脑中的反映形成原始数据, 原始数据经过认识 、理解、整理和去伪存真才转换 成信息。信息是经过加工处理的有用数据。1.1 信息、数据与数据处理1.1.1 信息与数据数据是信息的载体,是信息具体的、格式化的表现形式,是反映 客观实体属性的可识别的物理符号序列。这些符号就是数据形式。数据形式可以是多种多样的,例如某人 的出生日期是“1964年2月17日”,当然也可以将该形式改写为 “02/17/64”,但其含义并没有改变。数据的概念在数据处理领域已经大大地拓宽了。数据不仅仅指数 字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包 括图形、图像、动画、影像、声音(包括语音、音乐)等多媒体数 据。2.数据处处理数据处理是指利用计算机对各种形式的数据进行采集、加工、存储、计 算、分类、检索和传输等一系列活动的总和。数据处理的目的之一是从大量的、原始的数据中抽取、推导出对人们有 价值的信息以作为行动和决策的依据;目的之二是为了借助计算机科学地保 存和管理复杂的、大量的数据,以便人们能够方便而充分地利用这些宝贵的 信息资源。3.数据库库数据库可以直观地理解为存放数据的仓库。只不过这个仓库是在计算机的大容量存储器上。数据库本身不是数据,是一个数据容器。计算机对数据的管理是指对数据的组织、分类、编码、存储、检索 和维护提供操作手段。与其他技术的发展一样,计算机数据管理也经历了由低级到高级的 发展过程。计算机数据管理随着计算机硬件、软件技术和计算机应用范 围的发展而不断发展,多年来大致经历了如下三个阶段:l 人工管理阶段l 文件系统管理阶段l 数据库系统管理阶段1.1.2 数据管理技术的发展过程应用程序1应用程序2应用程序n数据集1数据集2数据集n图1-1 数据的人工管理1.人工管理阶阶段20世纪50年代以前,计算机主要用于数值计算。从当时的硬件看,外存只有纸带、卡片、磁带,没有直接存取设备;从软件看(实际上,当时还未 形成软件的整体概念),没有操作系统及管理数据的软件;从数据看,数据 量小,数据无结构,由用户直接管理,且数据间缺乏逻辑组织,数据依赖于 特定的应用程序,一组数据对应于一个程序,数据的独立性差。 这个时期数据管理的特点如下:1、没有文件的概念,数据不保存2、应用程序与数据之间缺少独立性。3、数据不能共享,数据冗余性大2.文件系统阶统阶 段20世纪50年代后期到20世纪60年代中期,出现了磁鼓、磁盘等直接存取数据的存储设备(硬件),以及专门用于数据管理的软件即文件系统(软件)。计算机不仅用于科学计算,也开始大量用于信息管理。图1-2 文件管理系统阶段应用程序1应用程序2应用程序n文件1文件2文件n文件 系统这个时期数据管理的特点如下:1、数据以文件的形式长期保存2、应用程序与数据之间有了一定的独立性3、数据有一定的共享性4、数据文件不再只从属于一个应用程序。5、仍有一定的数据冗余。6、数据的不一致性。3.数据库库系统阶统阶 段20世纪60年代后期,计算机性能得到提高,更重要的是出现了大容量磁盘,存储容量大大增加且价格下降。数据库的特点是具有整体的结构性,共享性高,因此冗余度小,具有一 定的程序与数据间的独立性,并且实现了对数据进行统一的控制。图1-3 数据的数据库系统应用程序1应用程序2应用程序n数据库 管理系统数据库数据表1数据表N例:人才档案管理系统人才管理成果管理招聘管理求职管理人才档案管理系统数据库这个时期数据管理的特点如下:1、数据的整体结构化2、具有很高的数据独立性3、数据的共享性高4、最小的数据冗余度5、完备的数据控制功能人们经常以模型来刻画现实世界中的实际事物。地图,航模都是具体的实物 模型,它们会使人们联想到真实生活中的事物,人们也可以用抽象的模型来描述 事物及事物运动的规律。这里讨论的数据模型就是这一类模型。数据模型是数据 库管理系统用来表示实体以及实体之间联系的方法。数据库中最常见的数据模型有三种,它们是:1.2 数据模型n n层层次模型次模型n n网状模型网状模型n n关系模型关系模型非关系型模型 关系型模型若用图来表示,层次模型是一棵倒立的树。在数据库中,满足以下两个条件的数据模型称为层次模型:(1)有且仅有一个结点无父结点,这个结点称为根结点;(2)其他结点有且仅有一个父结点。1.2.1 层次模型R1R2R3R4R5图1-5 层次模型若用图来表示,网状模型是一个网络。在数据库中,满足以下两个 条件的数据模型称为网状模型。(1)允许一个以上的结点无父结点;(2)一个结点可以有多于一个的父结点。1.2.2 网状模型R1R2R4R5R3图1-6 网状模型1.2.3 关系模型在关系模型中,数据的逻辑结构是一张二维表。在数据库中, 满足下列条件的二维表称为关系模型:(1)关系中每一数据项(字段)不可再分,是最基本的单位。(2)每一列数据项是同属性的,各列的顺序是任意的;关系中不允许有相同的列名。(3)每一行记录由一个事物的诸多属性项构成一个实体,不允许有相同的记录;记录的顺序可以是任意的。表1-1给出的人才档案表.dbf表便是一个关系模型。记录记录 号 姓名 性别别年龄龄 1藤海波 男 492杨杨行东东 男 56 3林惠繁 女 36 4黄晓远晓远 男 35 表1-1 Student表1.2.4面向对象型面向对象型最基本的概念是对象和类。什么叫数据库,数据库管理系统、数据库系统?数据库,是存储在外存中有结构的相关数据的集合,是一种 有结构的数据文件,是数据库管理系统管理的对象。数据库系统,是 一个引入数据库以后的计算机系统,他由计算机硬件及相关软件、数 据库、数据库管理系统及用户组成。数据库管理系统,是在操作系统 支持下管理数据的软件,实现数据库的建立、使用和维护,是数据库 系统的核心。1.3 数据库系统1.3.1 数据库的相关概念1、实体在信息世界中任何可以相互区别的客观事物与事物之间的关系,一律称为 实体。如:一个人、一本书、一次活动2、属性表示实体所具有的各种特征。一个实体由它的若干个属性来表示的。如:学号、姓名、性别、入学成绩等都是表示学生这个实体所具有的属性。1.3.2 实体-联系模型(E-R模型)3、实体型用实体名和属性名称集来描述同类实体如:人才档案(人才编号,姓名,性别,出生日期,政治面貌, 民族,学历,工资现状,工作简历,照片)4、字段也称为数据项,它是描述实体的最基本的元素二维列表中的列就是字段,列名就是字段名,对应该 列的那些具体数据就是字段值。5、元组或记录:在关系模型的二维表中,一行称为一个元组,也可称为一个记录。从表格的第二行开始,每一行称为一个记录。6、关键字在实体属性中,关键字可以用于区分(惟一标识)实体集中不同实体的那个属性或几个属性的组合,称为实体的关键字。如:学号(或学号与课程代码的组合)7、主关键字当有多个关键字而选择其中一个时,则称它为该实体的主关 键字。8、外部关键字若在实体诸属性中,某属性虽非该实体主关键字,却是另一 个实体的主关键字,则称它为外部关键字。9、域实体中的每个属性,都有一取值范围,这个取值范围称为属 性的域。在数据模型表示客观世界的过程中,一般用多个实体集来描述 。在多个实体集(数据表)间存在着相互的联系,这种联系有三种 :一对一关系、一对多关系、多对多关系。 1、一对一关系两个实体集间存在一一对应的关系,即对于A实体集中的每个 实体在B实体集中最多只能找到一个可以和它相联系的实体,反过 来同样。记为1:1 。例如一个学生和自己的学号见书p9 图1-71.3.3 实体之间的关系2、一对多关系两个实体集间存在一对多的联系,即对于A实体集的每个实体在B 实体集中可以找到对应的多个实体;反过来说,对于B实体集中的每 个实体,却只能在A实体集中找到一个能够相联系的实体。记为1:N。例如,一个学生可以有多门成绩对应。见书p10 图1-83、多对多关系两个实体集间存在多对多的联系,即A实体集中的单个实体与B实 体集中的多个实体相对应;反过来同样。记为M:N。例如,一个学生可选多门课程,一门课可被多个学生 选修。如:学生与课程的联系关系运算是在关系上对记录或字段进行运算的操作。关系运算有两种: 1、传统的集合运算(并、差、交、等); 2、专门的关系运算(选择、投影、连接)关系运算的操作对象是关系,运算的结果仍为关系。1.3.4 关系运算1、集合运算并:由属于R或S或同时属于R和S的元组组成的集合。记为RS交:由同时属于R和S的元组组成的集合。记为RS差:由属于R而不属于S的所有元组组成的集合。记为R-S例如:假定有两个同类关系R和S如下:R关系 S关系关系并运算(RUS)的结果是_ 关系差运算(RS)的结果是_ 关系交运算(RS)的结果是_。ABCa2c a4da4cABCa4d a6da4c(1)选择选择运算是在二维表中选择满足某些条件的元组,产生一个 新的关系。也就是说,选择运算是在二维表中选择满足指定条件的行。例如,在Student(学生基本情况)表中,若要找出所有女学生的元组,就可以使用选择运算来实现,条件是:性别=“女”。1.3.2 关系运算记录记录 号 学号 姓名 性别别出生日期 入学成绩绩 1981103 郭茜茜 女 11-17-82 650 2981203 李晓鸣晓鸣 女 11-17-82 400 (2)投影投影运算是在关系中选择某些属性列。例如:在Student(学生基本情况)表中,若要仅显示所有学生的学号、姓名和性别,那么可以使用投影运算来实现。学号 姓名 性别别981101 赵赵文化 男 981102 徐逸华华 男 981103 郭茜茜 女 981201 钱钱 途 男 981202 高 涵 男 981203 李晓鸣晓鸣 女 (3)连接连接运算是从两个二维表按某个条件提取部分或全部的元组或属性构成一组新的二维表,也就是在两个数据表文件中按指定条件选择元组和属性组成一个新的数据表文件。连接运算:等值连接和自然连接。自然连接要求两个关系中进行比较的分量必须是相同的属性,并且在结果中把重复的属性列去掉。StudID Name Sex 981102 徐逸华 男 981103 郭茜茜 女 981202 高 涵 男 表1-2 关系RStudID Subid Score 981102 1021 100 981103 1031 98 981101101188 981202 102190 表1-3 关系S表1-4 关系T StudI
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号