大学计算机基础ppt课件.PPT

上传人:本田雅阁 文档编号:2313318 上传时间:2019-03-19 格式:PPT 页数:97 大小:652.01KB
返回 下载 相关 举报
大学计算机基础ppt课件.PPT_第1页
第1页 / 共97页
大学计算机基础ppt课件.PPT_第2页
第2页 / 共97页
大学计算机基础ppt课件.PPT_第3页
第3页 / 共97页
亲,该文档总共97页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《大学计算机基础ppt课件.PPT》由会员分享,可在线阅读,更多相关《大学计算机基础ppt课件.PPT(97页珍藏版)》请在三一文库上搜索。

1、大学计算机基础,大学计算机基础,,Fundamentals of Computers,第七章 数据库技术,2,1.1 数据库系统的应用 1.2 数据库管理技术的产生和发展 1.3 数据库系统的组成,第1节 数据库系统概述,3,超市信息管理系统 在超市的数据库中存储所有关于进、销、存的信息,其中包括供应 商、商品、库存、销售、现金账和人员等超市运营管理的信息。 这些信息以表的方式存储,表与表之间存在一定的联系。 银行信息管理系统 电子商务网站,1.1 数据库系统的应用,4,数据处理的中心问题是数据管理。 数据管理是指对数据的组织、分类、编码、存储、检索和维护。 随着计算机硬件和软件的发展,数据管

2、理经历了人工管理、文件系统和数据库系统三个发展阶段。,1.2 数据库管理技术的产生和发展,5,产生的背景(20世纪50年代中以前) 应用需求 科学计算 硬件水平 无直接存取存储设备 软件水平 没有操作系统 处理方式 批处理,1、人工管理阶段(程序管理),6,特点 数据的管理者:应用程序,数据不保存。 数据面向的对象:某一应用程序,程序和数据不可分 数据的共享程度:无共享、冗余度极大 数据的独立性:不独立,完全依赖于程序,无结构。,应用程序与数据集合的关系,1、人工管理阶段,7,产生的背景(20世纪50年代后60年代中) 应用需求 科学计算、管理 硬件水平 磁盘、磁鼓 软件水平 有文件系统 处理

3、方式 联机实时处理、批处理 在文件系统中,应用程序从数据文件中存取数据,产生各种报 表和实现各种事务处理。 文件管理是指将有关数据组织成一个独立的文件,叫做数据文 件。,2、文件管理阶段,8,特点 数据的管理者:文件系统,数 据可长期保存 数据面向的对象:某一应用程 序 数据的共享程度:共享性差、 冗余度大 数据的结构化:记录内有结构, 整体无结构 数据的独立性:独立性差,数 据的逻辑结构改变必须修改应 用程序 数据控制能力:应用程序自己 控制,应用程序与数据集合的关系,2、文件管理阶段,9,产生的背景(20世纪60年代) 应用背景 大规模管理 硬件背景 大容量磁盘 软件背景 有数据库管理系统

4、 处理方式 联机实时处理,分布处理,批处理 指导思想是将所有的数据实行统一的、集中的、独立的管 理,形成一个所谓的数据仓库,使数据的存储完全独立于应 用程序,由数据库管理系统(DBMS)来对数据库进行管 理。,3、数据库系统管理阶段,10,DBS阶段数据与程序的关系,11,在数据字典中存储数据结构(元数据)和数据之间的联系。 数据字典:是DBMS自动建立和管理的一个文件,用于 存放数据结构(元数据)和数据之间的联系。 所有应用程序都通过DBMS访问数据库。BMS能够根据 数据库的任何变动自动地修改数据字典。 避免了文件系统编写、修改存取程序的麻烦,DBMS可 以消除文件系统中数据依赖于程序的弱

5、点,提供较好的 数据独立性。,3、数据库系统管理阶段特点,12,在建立数据库时,只需要简单地定义数据的逻辑结构,不必 花费大量的精力定义数据的物理结构和编写程序。 例如,定义一个学生表。只要用以下命令就可以建立数据库 的表结构。 CREATE TABLE学生(学号 SMALLINT, 学号是短整型数 姓名 CHAR(8); 姓名是字符型、长度是8个字符,3、数据库系统管理阶段特点,13,可以自动地将用户输入的逻辑数据转换成物理数据。逻辑数 据与物理数据之间的变换由DBMS来完成。 “逻辑数据”是指存在于人们头脑中有具体含义的数据, 例如年龄、性别等; “物理数据”是指实际存储在计算机中的二进制

6、数据。 DBMS能够把用户的逻辑请求转换成内部命令,由DBMS确 定数据的物理地址。 DBMS将查询的结果按照用户要求的格式输出。,3、数据库系统管理阶段特点,14,DBMS中通过封锁和授权机制,确保数据库的安全性和保密 性。 能够实现数据共享,支持多个用户的数据存取。 具有数据备份和数据恢复的能力,保证数据的可靠性。 提供完整性约束功能,可以控制数据冗余和消除潜在的数据 不一致问题。 提供功能强大的结构化查询语言(SQL)。SQL属于一种非 过程性语言,只需用户指出做什么,不必说明怎么做。同 时,DBMS还提供了第三代语言存取数据的接口,如 COBOL、C、Pascal等语言。,3、数据库系

7、统管理阶段特点,15,数据库是长期存储在计算机内有组织的大量的共享的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。 DBMS在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性、安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对系统进行恢复。,3、数据库系统管理阶段,16,文件 桌面数据库 大型商业数据库 开源数据库 新型Java数据库 国产数据库,数据库系统平台简介,17,文本文件 文件保存在操作系统中的目录中。有不同类 型的文件,例如,可执行文件(.EXE)、数据文件 (.DAT)和文本文件(.TXT)等。数据库也是以文件 形式由操作系统管理并

8、存放在磁盘上的。 Excel文件 微软公司提供的处理电子表格的软件,适 合日常工作中的表格管理、财务报表处理或报表打 印。,1、文件,18,Access 是微软提供的一种小型桌面关系数据库管理系统。它具有关 系数据库管理系统的基本功能。另外,还可以编写用户使用界面和可 供打印的报表,很容易制作一个小型的MIS系统。 XBase 作为个人计算机系统中使用最广泛的小型数据库管理系统, 具有方便、廉价、简单易用等优势,并向下兼容Dbase、Foxbase等 早期的数据库管理系统。它有良好的普及性,在小型企业数据库管理 与WWW结合等方面具有一定优势,但它难于管理大型数据库。,2、桌面数据库,19,O

9、racle是目前世界上最流行的大型关系数据库管理系统,具有移植性 好、使用方便、功能强大、性能强大等特点,适用于各类大、中、小、 微机和专用服务器环境。 Oracle适合大中型企业使用,在电子政务,电信、证券和银行企业中使 用比较广泛。 Oracle 1.0于1979年推出,目前最新版本为Oracle 10i。 SQL Server 、IBM的DB2,Sybase和Informix等。,3、大型商业数据库,20,开源数据库是指开放源代码的数据库,Linux系统下最受 程序员喜爱的三种DB是MySQL、PostgreSQL和 Oracle。其中MySQL、PostgreSQL是开源数据库的优 秀

10、代表。 开源数据库具有速度快、易用性好、支持SQL语言、支 持各种网络环境、可移植性、开放和价格低廉(甚至免 费)等特点。,4、开源数据库,21,伴随着互联网的发展,使用Java语言编写的面向 对象数据库管理系统也应运而生。 JDataStore是Borland公司推出的纯Java数据 库,主要用于J2EE平台,具有跨平台的移植性, 与Borland新一代Java开发工具Jbuilder配合使 用。,5、新型Java数据库,22,据中国软件评测中心对国内、外数据库的调查结果显示,以东软 OpenBASE等为代表的国产数据库除了具有自主版权外,在技术方面已经 接近国外先进水平。 国产数据库有价格

11、低和实施周期短等优势。目前,已经获得实际应用的国产 数据库主要包括: 1东软公司开发的东软OpenBASE; 2九江华易软件有限公司开发的华易数据库管理系统HYSQL; 3人大金仓公司开发的Kingbase ES金鼎DBMS; 4武汉华工达梦数据库有限公司研制的DM3; 5北京国信贝斯软件有限公司推出的iBASE数据库。,6、国产数据库,23,近年来,在计算机领域出现了许多新技术,例如分布式处理技术、并行 处理技术、人工智能、多媒体处理技术、模糊技术和面向对象技术等。 随着与其他学科内容的结合,数据库技术的应用范围越来越广,出现了 一些更适合特定领域的新型数据库技术,例如工程数据库、模糊数据

12、库、统计数据库、时态数据库和演绎数据库等。 从发展上也出现了一些引人瞩目的趋势,其主要趋势包括分布式数据 库、面向对象数据库、多媒体数据库和并行数据库等。,数据库应用及发展趋势,24,数据库 数据库管理系统 数据库应用 数据库管理员 用户,1.3 数据库系统的组成,25,从用户使用数据库的观点,定义数据库是长期存储在计算机 内、有组织的、可共享的数据集合。 数据库不仅需要存储用户的数据,还存储有关数据的结构描 述信息(元数据)。 数据库技术是数据处理最有效的手段。数据库中的数据按一 定的数据模型组织、描述和存储,具有较小的冗余度、较高 的数据独立性和易扩展性,可为各种用户共享。,数据库(DB,

13、 DataBase),26,DB,27,DBMS是一个系统软件,是用户与数据库间的接口。 对内,数据库复杂的结构描述信息由DBMS直接管理, 终端用户不必了解数据库内部复杂的结构。 对外,它向用户提供一整套命令,用于合法用户对数据 库的各种操作;包括创建DB、定义数据、增、删、改DB 记录、统计计算等。当用户读取数据时,DBMS自动地 将用户的请求转换成复杂的机器代码,实现用户对数据 库的操作。 DBMS是在OS支持下工作的数据库管理软件。,数据库管理系统(DBMS),28,DBMS是商品化的数据库软件,用户不能对DBMS进行修 改。 所谓数据库设计不是对DBMS的设计,而是对数据库的结构 进

14、行设计。一旦完成数据库设计,就可以利用DBMS提供的 数据定义功能,把所设计的数据模型转换成计算机能够接受 的内部结构。,DBMS,29,用户对数据库的操作就是数据库应用。 也可以理解为实现业 务逻辑的应用程序。 数据库应用的方式有:屏幕格式、查询窗口、报表、菜单、 应用程序和交互式操作 ,其中除应用程序外都可以由DBMS 实现。 目前,有许多数据库应用开发工具,例如,Oracle公司的 Developer2000,Sybase公司的PowerBuilder等。应用这 些工具可以快速地开发应用组件。,数据库应用,30,专门从事数据库管理的机构和人员,称为数据库管理员 (DBA)。 DBA全面负

15、责对数据库管理的计划、组织、测试、监控和服 务 。 向终端用户提供数据和信息 制定数据库管理的政策、标准和规程 确保数据库的安全性,防止非法操作 数据库的备份和恢复 培训终端用户,数据库管理员(DBA),31,用户使用数据库应用跟踪事务过程。他们使用表单来读取、 输入和查询数据,并且生成报表。,用 户,32,DBS是指在计算机系统中引入DB后的系统构成。 DBS = 数据库 + 用户 + 软件 + 硬件 硬件:指运行DBS的硬件资源,例如,SQL Server要求至少16MB内存、32位CPU、至少80MB硬盘空间; 软件:指DBS操作平台,例如WINDOWS NT、DBMS、汉字处 理系统等

16、; 用户:指终端用户、应用程序员和数据库管理员。,数据库系统DBS,33,数据处理的三个世界 数据模型,第2节 数据模型,34,从现实生活中的客观事物到存放于计算机中的数据,这样一个加工 过程可划分为三个阶段: 现实世界、信息世界和计算机世界 在现实世界中,分析客观事物,找出要求解的对象集合,研究这些 对象、认识它们的本质及其规律。 在概念世界中,将求解的事物映射为实体,找出实体之间的各种联 系,用实体-联系图来描述(Entity-Relationship,简称E-R图)。 在计算机世界中,将实体模型转换为能够在计算机中处理的数据模 型。,客观存在的世界中的事实及其联系。,现实世界在人们头脑中

17、的反映,是对客观事物及其联系的一种抽象描述,可称作数据世界,是在信息世界基础上的进一步抽象,7.2.1、数据处理的三个世界,35,在现实世界中,某类实体集中各个属性之间的联系、各实体之 间的联系可使用E-R图来描述,E-R图是由美籍华人Peter Chen 在1976年提出的。在E-R图中,用矩形表示实体,用圆角矩形 表示属性,用菱形表示实体间的联系。,实体与关系,36,数据,数据分级,记录 项 项 值,数 据 模 型,实 体 模 型,事物 及 联系,实体分级,实体,对象 属性 总体 个体,事物,事物分级,对象 性质 共同 特殊,抽 象 过 程,数据 世界,信息 世界,现实 世界,客观世界是信

18、息之源,是设计DB的出发点。 实体模型和数据模型是对客观事物的两级抽象描述。 数据库的核心问题是数据模型。,结论: 要得到正确的数据模型,必须首先充分了解客观事物。,由此可见:,数据加工三个阶段的关系,37,以教学管理为例: 教学由学生、课程、教师、学习、任课等实体组成。 学生属性:学号、姓名、性别、年龄、班级 课程属性:课程号、课程名称 教师属性:姓名、课程号、课时 学习属性:学号、课程号、分数 任课属性:教师名、课程号、教室,实体模型举例,38,课程,成绩,授课,教师,学生,教师编号、姓名、职称,教师编号、课程号,学号、姓名、性别、班级,课程号、课程名,学号、课程号、分数,听课,学习,讲授

19、,教学实体模型示意图,39,建立了实体模型后,就可以建立数据模型了。 数据模型就是现实世界的模拟和抽象。 或 在DBS中表示实体(数据记录)之间联系的方式称为数据模型。数 据模型实际上是数据间的一个整体逻辑结构图。 为了使模型能清晰、准确地反映客观事物,要进行数据模型的设计,也 即数据库的设计。 数据模型的组成 数据模型的分类,7.2.2 数据模型,40,数据结构 数据结构是所研究的对象类型的集合。 数据操作 数据操作是指对数据库中各种对象(型)的实例(值) 允许执行的操作集合,包括操作及有关的操作规则。 完整性约束 数据的约束条件是一组完整性规则的集合。,数据模型的组成,41,所研究的对象:

20、 与数据类型、内容、性质有关的对象,例如网状模型中的数据项、记录,关系模型中的域、属性、关系等; 与数据之间联系有关的对象,例如网状模型中的系型(SetType)。 数据结构是刻画一个数据模型性质最重要的方面。 数据结构的类型,例如层次结构、网状结构和关系结构。 数据结构是对系统静态特性的描述。,数据结构,42,数据库主要有检索和更新(包括插入、删除、修改)两大类 操作。 数据模型必须定义这些操作的确切含义、操作符号、操作规 则(如优先级)以及实现操作的语言。 数据操作是对系统动态特性的描述。,数据操作,43,完整性规则是给定的数据模型中数据及其联系所具有的制约 和依存规则,用以限定符合数据模

21、型的数据库状态以及状态 的变化,以保证数据的正确、有效、相容。 数据模型应该反映和规定本数据模型必须遵守的基本的通用 的完整性约束条件。,完整性约束,44,概念模型 面向计算机用户、面向现实世界的数据模型,它与DBMS无关,不 依赖于具体的计算机系统,它主要用于应用系统开发的有关需求分 析,描述一个单位的概念化结构,将现实世界抽象为信息世界。 逻辑模型 数据库的组织形式称为逻辑数据模型,它决定了数据库中数据之间 联系的表达方式。 在建立了概念数据模型后,即根据一定的规则将其转化为逻辑数据 模型。 物理模型,数据模型的分类,45,这类模型主要用于信息世界的建模,强调语义表达能力,能 方便、直接地

22、表达应用中各种语义知识,其概念简单、清 晰用户容易理解。 概念数据模型主要有:实体-联系模型(E-R模型)、扩展实 体联系模型(EER模型)、面向对象模型(OO模型)、 IDEF1X模型等,概念数据模型用于数据库的设计。其中以 E-R模型最为著名。,概念模型,46,目前,常用的逻辑数据模型有三种:层次模型、网状模型、 关系模型。 层次模型(Hierachical Model): 数据之间的联系像一棵倒放的树,树根、树的分枝点和树叶都称为节点,节点是分层次的,树根是最高层。 军队中的建制、机关编制、家谱等都属于层次模型。,逻辑模型,47,层次模型示意图,48,网络模型(Network Model

23、): 数据之间的联系象一张网,网上的联接点称为节点,节点 与节点之间是平等的,不分层次。,网络模型,49,关系模型(Relational Model): 关系模型是当前DBMS所支持的数据模型的主流,关系模 型建立在集合论的基础上,工资表、成绩表、档案表等都 属于关系模型。 其组织形式是一张二维表,一个表即一个关系;其特点: 一个关系一张表 数据独立性高 操作简单 一行是一个记录 一列是一个数据项(字段),关系模型,50,物理数据模型反映数据的存储结构,例如存储介质的物理 块、指针和索引等。 每个逻辑数据模型在实现时,都有其对应的物理数据模型。 物理数据模型不但与DBMS有关,而且还与计算机系

24、统的硬 件和操作系统有关。 物理数据模型和逻辑数据模型用于DBMS的实现。,物理模型,51,数据库应用系统设计步骤,DB应用系统的设计步骤符合软件工程设计思想。 用户需求分析 理解用户对该项目所提出的各种要求,并进一步对各个环节进行抽象。 概念设计 将需求分析的结果抽象为信息结构,得到系统的全局E-R图。 逻辑设计 将得到的抽象的E-R图转换成数据模型。 物理设计 确定得到的数据模型最后反映在物理设备上是个什么物理结构。 数据库实施 在选定的RDBMS中,建立系统的数据库结构,对原始数据进行采集、整理、转换并录入。 数据库的维护 包括故障排除、数据备份和恢复、安全性和完整性机制的定期改善,以及

25、对数据库性能进行改进。,数据库应用系统设计步骤,52,从数据库管理系统角度看,数据库系统通常采用三级模式 结构 数据库模式的概念 数据库系统的三级模式结构 数据库的两级映射功能与数据独立性,第3节 数据库体系结构,53,在数据模型中有型与值的概念 模式(Schema)是数据库中全体数据的逻辑结构和特征的 描述,它仅仅涉及到型的描述,不涉及到具体的值。模式的 主体就是数据库的数据模型。 模式反映的是数据的结构及其联系,而实例反映的是数据库 某一时刻的状态。,数据模式的概念,54,外模式 也称子模式(Subschema)或用户模式,它是数据库用户 (包括应用程序员和最终用户)能够看见和使用的局部数

26、据 的逻辑结构和特征的描述,是数据库用户的数据视图,是与 某一应用有关的数据的逻辑表示。 外模式通常是模式的子集。一个数据库可以有多个外模式。 一个应用程序只能使用一个外模式。,数据库系统的三级模式结构,55,模式 也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的 描述,是所有用户的公共数据视图。 模式实际上是数据库数据在逻辑级上的视图。一个数据库只 有一个模式。,数据库系统的三级模式结构,56,内模式 也称存储模式(Storage Schema),它是数据物理结构和 存储方式的描述,是数据在数据库内部的表示方式。 一个数据库只有一个内模式。,数据库系统的三级模式结构,57,数据库系统的分

27、层视图,58,数据库管理系统在三级模式之间提供了两层映射:外模式/模 式映射;模式/内模式映射。 正是这两层映射保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 外模式/模式映射 模式/内模式映射,数据库的两级映射功能与数据独立性,59,模式描述的是数据的全局逻辑结构,外模式描述的是数据的 局部逻辑结构。对应于同一个模式可以有任意多个外模式。 对于每一个外模式,数据库系统都有一个外模式/模式映射, 它定义了该外模式与模式之间的对应关系。这些映射定义通 常包含在各自外模式的描述中。 当模式改变时(例如增加新的关系、新的属性、改变属性的 数据类型等),由数据库管理员对各个外模式/模式

28、的映射作 相应改变,可以使外模式保持不变。应用程序是依据数据的 外模式编写的,从而应用程序不必修改,保证了数据与程 序的逻辑独立性,简称数据的逻辑独立性。,外模式/模式映射,60,数据库中只有一个模式,也只有一个内模式,所以模式/内模 式映射是唯一的,它定义了数据库全局逻辑结构与存储结构 之间的对应关系。 当数据库的存储结构改变了(例如选用了另一种存储结 构),由数据库管理员对模式/内模式映射作相应改变,可以 使模式保持不变,从而应用程序也不必改变。保证了数据与 程序的物理独立性,简称数据的物理独立性。,模式/内模式映射,61,关系模型的基本概念 关系的形式化定义 关系代数基础 结构化查询语言

29、(SQL)基础,第4节 关系数据库基础,62,关系模型 是数学化的模型,它把数据看作二维表中的元素,表就是其关系。 其特点是: 表中每一列属性都是不能再细分的基 本单元 不允许有重复的列 不允许有相同的记录 行、列次序均无关,1.关系模型的基本概念,63,关系(库名)SHOP,店 名 地 址 经办人 电话,解放路食品店 解放路262号 李国基 2278101 桃园商场 桃园路6号 张山 3268231 香甜瓜果店 北大街26号 王宏 3262013 白塔干鲜果店 西大街56号 宋良忠 2667337 北大街果品店 北大街231号 林青 3101169,关系框架 或 库结构,元组 或 记录,属性

30、(字段),属性 “电话”的值,关系概念的图解,64,关系模型的数据结构非常单一。在关系模型中,现实世界的 实体以及实体间的各种联系均用关系来表示。在用户看来, 关系模型中数据的逻辑结构是一张二维表。 每一个交叉点都必须是单值的(不能有重复组);每一列 (属性)的所有数据都是同一类型的,每一列都有唯一的列 名,列在表中的顺序无关紧要;表中任意两行(元组)不能 相同,行在表中的顺序也无关紧要。,关系的数据结构,65,查询(Query)操作:选择(Select)、投影(Project)、 连接(Join)、除(Divide)、并(Union)、交 (Intersection)、差(Differenc

31、e)等。 其它操作:插入(Insert)删除(Delete)更新(Update) 等。,关系的基本操作,66,关系模型允许定义三类完整性约束:实体完整性、参照完整 性和用户定义的完整性。其中,实体完整性和参照完整性是 关系模型必须满足的完整性约束条件,应该由关系系统自动 支持。用户定义的完整性是应用领域需要遵循的约束条件, 体现了具体领域中的语义约束。,关系的基本约束,67,域(Domain) 笛卡尔积(Cartesian Product) 关系(Relation),关系的形式化定义,68,域是一组具有相同数据类型的值的集合。例: 整数 实数 介于某个取值范围的整数 长度指定长度的字符串集合

32、男,女 介于某个取值范围的日期,域(domain),69,给定一组域D1,D2,Dn,这些域中可以有相同的。 D1,D2,Dn的笛卡尔积为:D1D2Dn (d1,d2,dn)diDi,i1,2,n 所有域的所有取值的一个组合 不能重复,笛卡尔积(Cartesian Product),70,元组(Tuple) 笛卡尔积中每一个元素(d1,d2,dn)叫作一个n元 组(n-tuple)或简称元组。 分量(Component) 笛卡尔积元素(d1,d2,dn)中的每一个值di叫作一 个分量。,笛卡尔积,71,关系 D1D2Dn的子集叫作在域D1,D2,Dn上的关 系,表示为 R(D1,D2,Dn)

33、R:关系名 n:关系的目或度(Degree),关系(relation),72,元组 关系中的每个元素是关系中的元组,通常用t表示。 单元关系与二元关系 当n=1时,称该关系为单元关系(Unary relation)。 当n=2时,称该关系为二元关系(Binary relation)。,关 系,73,属性 关系中不同列可以对应相同的域,为了加以区分,必须对 每列起一个名字,称为属性(Attribute)。 n目关系必有n个属性,关 系,74,若关系中的某一最小属性组的值能唯一地标识一个元组,则 称该属性组为候选键(Candidate Key)。 若一个关系有多个候选键,则选定其中一个为主键 (P

34、rimary Key)。主键的诸属性称为主属性(Primary Attribute)。 不包含在任何候选键中的属性称为非键属性(Non-key Attribute)。,关 系,75,关系数据模型中的关系必须是有限集。 任意两个元组不能完全相同。 每一列的所有数据都属于同一种类型; 关系中的每一列都是不可再分的; 不同的列可出自同一个域,称其中的每列为一个属性,不同 的属性要有不同的属性名; 列的顺序与行的次序可以任意交换,不影响它们所表示的信 息内容;,关系的性质,76,关系的描述称为关系模式。一个关系模式通常包括关系名、 组成该关系的属性名、属性到域的映像以及属性间的数据依 赖关系等。在这一

35、章中关系模式通常记为R(A1, A2,An)。其中,R为关系名,A1,A2,An为属性 名。属性到域的映像常常直接说明为属性类型、长度等。 关系是关系模式在某一时刻关系模式对应的内容,是一个元 组的集合。通常把关系模式和关系统称为关系,读者应当根 据上下文加以区分。 关系数据库的描述称为数据库模式,通常是由若干关系模式 组成的。而数据库的值是由组成该数据库模式的所有关系模 式在某一时刻对应的关系的集合组成的。,关系模式与关系数据库,77,基本运算 选择、投影、并、差、积 其它运算 交、自然连接、除 等 交、自然连接、除等运算可以由基本运算定义,关系代数基础,78,选择运算是从关系中选择某些满足

36、条件的元组构成一个新的 关系。通常选择运算表达式记为:(R)。 例如,要从学生关系中选择性别=女的元组应写成: 性别=女(学生),选择运算,79,学号 姓名 性别 06002657 王远征 男 06002782 李守财 男 06002792 张小冬 男 05001234 韩龙妹 女 05001343 窦旭香 女,学号 姓名 性别 05001234 韩龙妹 女 05001343 窦旭香 女,性别=女,选择运算的条件表达式中可以使用比较运算符、!、和=,也可以用逻辑运算符AND(逻辑与)和OR(逻辑或)构成复杂的条件表达式。,选择运算,80,投影运算是从关系中选择某些属性列构成个新的关系。投 影的

37、结果将消除重复元组。通常投影运算表达式记为: A,B(R),其中A和B是属性名,R是一个关系。 有学生关系R,列出学生的姓名和专业,其投影运算表达式应 写成: 姓名,专业(学生)或写成:2,4(学生) 投影运算的结果是一个包含姓名和专业属性的新关系,投影运算,81,姓名 专业 窦旭香 物理 李守财 法学 王远征 数学,学号 姓名 性别 专业 05001343 窦旭香 女 物理 06002782 李守财 男 法学 06002657 王远征 男 数学,姓名,专业(学生),投 影,82,设关系R和S的属性数目(n列)相同,且相应的属性取自同 一个域,则关系R与S的并是由属于R或属于S的元组组成的 新

38、关系。其结果是具有n个属性的关系,且消除重复元组。 通常并运算表达式记为:RUS 有学生和新生关系如下: 学生(学号,姓名,性别) 新生(学号,姓名,性别) 如果要把两个关系合并成一个关系,可以用并运算实现这个 操作。显然,两个关系的属性数目相同,相应属性域也相 同,满足并运算的条件。 并运算的结果有9个元组其中5个元组来自学生关系,4个 元组来自新生关系。如果有重复的元组将消除。,并(union),83,学号 姓名 性别 06002657 王远征 男 06002782 李守财 男 06002792 张小冬 男 05001234 韩龙妹 女 05001343 窦旭香 女,学号 姓名 性别 07

39、005437 宁建春 女 07004321 曲春霞 女 07003352 雷金凤 女 07003482 武利君 男,学号 姓名 性别 06002657 王远征 男 06002782 李守财 男 06002792 张小冬 男 05001234 韩龙妹 女 05001343 窦旭香 女 07005437 宁建春 女 07004321 曲春霞 女 07003352 雷金凤 女 07003482 武利君 男,并(续),84,设关系R和S具有相同数目的属性(n列),且相应的属性取 自同一个域,则关系R与S的差是由属于R而不属于S的元组 构成的新关系,记为:R-S。 有学生和毕业生关系如下: 学生(学号姓

40、名) 毕业生(学号,姓名) 显然,两个关系的属性数目相同,且相应属性域也相同,满 足差运算的条件。差运算的结果是在校生关系,共有3个元 组,这3个元组属于学生关系,但不属于毕业生关系。 如果要生成一个在校生关系,即从学生关系中减去毕业生的 元组,可以用差运算实现。,差(difference),85,学号 姓名 06002657 王远征 06002782 李守财 06002792 张小冬 05001234 韩龙妹 05001343 窦旭香,学号 姓名 05001234 韩龙妹 05001343 窦旭香,学号 姓名 06002657 王远征 06002782 李守财 06002792 张小冬,差(

41、续),86,关系R与关系S的笛卡儿积记成:RS,若R有m个属性,S 有n个属性,则RS是一个具有(m+n)个属性的关系,且 RS元组的前m列是R的一个元组,后n列是S的一个元组。 如果R有i个元组,S有j个元组,则RS有(ij)个元组。 有学生和必修课关系如下: 学生(学号,姓名) 必修课(课号,课程名,学分) 假设规定每名学生必须学习所有必修课程,可以用笛卡儿 积生成一个学习关系; 学习(学号、姓名、课号、课程名、学分),笛卡尔积(product),87,学号 姓名 06002657 王远征 06002792 张小冬,课程 课程名 学分 C23 数据库 4 C24 英语 5 C25 数理统计

42、 3,学号 姓名 课号 课程名 学分 06002657 王远征 C23 数据库 4 06002657 王远征 C24 英语 5 06002657 王远征 C25 数理统计 3 06002792 张小冬 C23 数据库 4 06002792 张小冬 C24 英语 5 06002792 张小冬 C25 数理统计 3,笛卡尔积(续),88,关系代数的交运算是二元运算。交运算的关系必须是相容 的,即两个关系属性数目相同。且相应属性的性质相同 交运算可由差运算推导出来,即 RS=R-(R-S),交(intersection),89,学号 姓名 06002657 王远征 05001343 窦旭香,学号 姓

43、名 06002657 王远征 06002782 李守财 05001234 韩龙妹 05001343 窦旭香,学号 姓名 06002657 王远征 05001343 窦旭香,交(续),90,连接也称为连接 连接运算的含义 从两个关系的笛卡尔积中选取属性间满足一定条件的元 组 连接运算是选择两个关系的笛卡儿积中满足连接条件的 元组。即关系R与S的连接运算是: RS=(RS),连接(join),91,连接与笛卡儿积的区别: 笛卡儿积包含两个关系的所有关系的组合,而连接只包含那些满足连接条件的元组组合。如果没有连接条件,则连接就变成笛卡儿积了。 连接条件中的属性称为连接属性,两个关系中的连接属性应该是

44、可比的。属性名可以不同,但要有相同的属性域。连接条件的一般形式可表示为 逻辑算符逻辑算符逻辑算符 这里的逻辑算符可以是:AND(逻辑与,简记为)、OR(逻辑或,简记为),也可以使用NOT(逻辑非,简记为一)。 每一个条件一般表示为 Ai Bj;,连接(续),92,等值连接 所有条件为“”的连接运算称为等值连接 . 从关系R与S的广义笛卡尔积中选取A、B属性值相 等的那些元组. 自然连接 自然连接是一种特殊的等值连接 两个关系中进行比较的分量必须是相同的属性组,在 结果中把重复的属性列去掉 自然连接算法是先求笛卡儿积、再选择、最后投 影,自然连接可以表示为 RS=(RS),常用的连接,93,94,95,96,SQL语言按用途可划分为3个组成部分: 数据定义语言(DDL):在数据库系统中,数据库、表、视 图、索引等都是对象,用于定义这些对象的SQL语句称为 DDL; 数据处理语言(DML):用于插入、修改、删除和查询数据 的SQL语句称为DML; 数据控制语言(DCL):用于实现数据完整性、安全性、一 致性等控制的SQL语句称为DCL。,结构化查询语言(SQL)基础,97,SQL语句简表,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1