版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、?MySQL?MySQL数据库原理及应用数据库原理及应用? ?课件课件第第1 1章理解数据库章理解数据库课程课程介绍介绍 数据库技术是目前计算机领域开展最快、应用最广泛的技术,它的应用普及各行各业,大到如全国联网的飞机票、火车票订票系统、银行业务系统;小到个人的管理信息系统,如家庭理财系统。在互联网流行的动态网站中,数据库的应用也已经非常广泛。学习和掌握数据库的根底知识和根本技能、利用数据库系统进行数据处理是大学生必须具备的根本能力。课程介绍:课程介绍: 该门课是计算机类专业的专业根底课,同学们陆续学该门课是计算机类专业的专业根底课,同学们陆续学习的习的JAVAJAVA、网页设计、网页设计、J
2、SPJSP、网站开发等等都要用到数据库。、网站开发等等都要用到数据库。 ? ?数据库原理及应用数据库原理及应用? ?主要讨论数据库系统的根本概念、主要讨论数据库系统的根本概念、根本原理、根本方法以及有关的应用。主要内容包括:数据库根本原理、根本方法以及有关的应用。主要内容包括:数据库的理解、数据库的设计和数据库的应用及维护等。本课程的任的理解、数据库的设计和数据库的应用及维护等。本课程的任务是通过各个教学环节,运用各种教学手段和方法,使学生在务是通过各个教学环节,运用各种教学手段和方法,使学生在掌握数据模型、数据库管理系统、数据库语言及数据库设计理掌握数据模型、数据库管理系统、数据库语言及数据
3、库设计理论等根本理论知识的根底上,逐步具有开发和设计数据库的能论等根本理论知识的根底上,逐步具有开发和设计数据库的能力。力。 要求:要求:1、上课认真听讲2、作业认真完成3、做好实验预习报告4、做好实验总结数据库原理及应用数据库原理及应用理解数据库设计数据库创立数据库数据库的根本应用数据库的高级应用MySQL数据库高级管理第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构一一信息信息和数据和数据1.1.信息信息2.2.数据数据二二数据处理数据处理第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描
4、述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据数据定义:定义:是用来记录信息的可识别的符号,是信息的具体表现形式。表示:表示:型:是指数据内容存储在媒体上的具体形式值:是指所描述的客观事物的具体特性可以用多种不同的数据形式表示同一信息,信息不随数据形式的不同而改变。 例:一个人的身高数据不仅包括数字、文字形式,而且还包括图形、图像、声音、动画等多媒体数据。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息信息定义:定义:是对各种事物的存在方式、运动状态和相互联系特征的一种表达和陈述,是自
5、然界、人类社会和人类思维活动普遍存在的一切物质和事物的属性,它存在于人们的周围。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据处理数据处理定义定义: :是指将数据转换成信息的过程,也称信息处理。内容内容: :数据的收集、组织、整理、存储、加工、维护、查询和传播等一系列活动。它的主要任务是收集信息,将信息用数据表示并按类别组织保存。数据管理它的主要任务是对数据进行变换、抽取和运算。数据加工通过数据传播,信息在空间或时间上以各种形式传递。数据传播第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数
6、据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据描述数据描述人们把客观存在的事物以数据的形式存储到计算机中,经历了3个领域:现实世界、信息世界和机器世界。 事物 事物性质现实世界 实体 实体属性信息世界 记录 数据项数据世界第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构现实世界现实世界现实世界是存在于人们头脑之外的客观世界。例如,学校中有教师、学生、课程,教师为学生授课,学生选修课程并取得成绩;图书馆中有图书、管理员和读者,读者借阅图书,管理员对图书和读者进行管理等。第第1 1章章 理
7、解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界信息世界是现实世界在人们头脑中的反映,人们把它用文字或符号记载下来。在信息世界中,有以下与数据库技术相关的术语。实体属性码域实体型实体集联系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界实体实体客观存在并且可以相互区别的事物客观存在并且可以相互区别的事物称为实体称为实体具体的事物具体的事物-如一个学生、一本如一个学生、一本图书等属于实际事物图书等属于实际事物抽象的事
8、件抽象的事件-教师的授课、借阅教师的授课、借阅图书、比赛等活动是比较抽象的事图书、比赛等活动是比较抽象的事件件第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界属性属性描述实体的特性称为属性。描述实体的特性称为属性。一个实体可以用假设干个属性来描一个实体可以用假设干个属性来描述,如学生实体由学号、姓名、性述,如学生实体由学号、姓名、性别、出生日期等假设干个属性组成。别、出生日期等假设干个属性组成。型型: :也称属性名也称属性名 例例: :学生姓名、学号和性别等学生姓名、学号和性别等值值: : 例例
9、: : “张三、张三、 “20210501012021050101、 “女女第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界码唯一标识实体的属性或属性的组合称为码。例:学生的学号是学生实体的码第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界域属性的取值范围称为该属性的域。例:学号的域为10位整数 姓名的域为字符串集合 年龄的域为小于28的整数 性别的域为男、女第第1 1章章 理解数据理解数据库库1
10、.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界实体型具有相同属性的实体必然具有共同的特征和性质,用实体名及其属性名的集合来抽象和刻画同类实体,称为实体型。例:学生(学号,姓名,性别,出生 日期,系)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界实体集同类实体的集合称为实体集。例:全体学生、一批图书等。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构
11、信息世界信息世界联系在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。两个实体型之间的联系可以分为3类一对一联系一对多联系多对多联系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界一对一联系一对一联系如果对于实体集如果对于实体集A A中的每一个实体,中的每一个实体,实体集实体集B B中至多存在一个实体与之中至多存在一个实体与之联系;反之亦然,那么称实体集联系;反之亦然,那么称实体集A A与实体集与实体集B B之间存在一对一联系,之
12、间存在一对一联系,记作记作1111。例例: :班级班级: :班长班长电影院中观众电影院中观众: :座位座位第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界一对多联系一对多联系如果对于实体集如果对于实体集A A中的每一个实体,中的每一个实体,实体集实体集B B中存在多个实体与之联系;中存在多个实体与之联系;反之,对于实体集反之,对于实体集B B中的每一个实中的每一个实体,实体集体,实体集A A中至多只存在一个实中至多只存在一个实体与之联系,那么称实体集体与之联系,那么称实体集A A与实与实体集体集
13、B B之间存在一对多的联系,记之间存在一对多的联系,记作作1n1n。例例: :班级班级: :学生学生职工职工: :部门部门第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界多对多联系多对多联系如果对于实体集如果对于实体集A A中的每一个实体,中的每一个实体,实体集实体集B B中存在多个实体与之联系;中存在多个实体与之联系;反之,对于实体集反之,对于实体集B B中的每一个实中的每一个实体,实体集体,实体集A A中也存在多个实体与中也存在多个实体与之联系,那么称实体集之联系,那么称实体集A A与实体集
14、与实体集B B之间存在多对多联系,记作之间存在多对多联系,记作mnmn。例例: :学生学生: :课程课程药厂药厂: :药品药品第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息信息世界世界(a) 11联系 (b) 1n联系 (c) mn联系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界两个以上的实体集之间也存在着一对一、一对多、多对多的联系。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描
15、述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构信息世界信息世界同一实体集内部的各实体也可以存在一对一、一对多、多对多的联系。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据世界数据世界数据世界又称机器世界。信息世界的信息在机器世界中以数据形式存储实体记录实体的属性数据项(又称字段) 现实世界中的事物及其联系数据模型第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构现实世界中客观对象的抽象过程第第1 1章章 理
16、解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据模型对现实世界数据特征进行抽象,来描述数据库的结构与语义数据模型分类概念模型的表示方法数据模型的要素和种类关系模型关系的完整性1. 1. 概念概念数据模型数据模型2. 2. 结构结构数据模型数据模型简称为概念模型用于建立信息世界的数据模型,强调其语义表达功能,要求概念简单、清晰,易于用户理解是现实世界的第一层抽象是用户和数据库设计人员之间进行交流的工具。简称为数据模型,它是直接面向数据库的逻辑结构是现实世界的第二层抽象例如层次模型、网状模型、关系模型等。数据模型有严格的形式化定
17、义,以便于在计算机系统中实现。第1章 理解数据库第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法概念模型的表示方法很多,其中最为著名和使用最为广泛的是于1976年提出的E-R(Entity-Relationship)模型。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法E-R模型主要成分是实体、联系和属性E-R模型的图形表示称为E-R图设计E-R图的方法称为E-R方法利用E-R模型进行数据库的
18、概念设计,可以分为3步:首先设计局部E-R模型;然后把各个局部E-R模型综合成一个全局E-R模型;最后对全局E-R模型进行优化,得到最终的E-R模型。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法E-R图通用的表示方式如下。用矩形框表示实体型,在框内写上实体名。用椭圆形框表示实体的属性,并用无向边把实体和属性连接起来。用菱形框表示实体间的联系,在菱形框内写上联系名,用无向边分别把菱形框与有关实体连接起来,在无向边旁注明联系的类型。如果实体间的联系也有属性,那么把属性和菱形框也用无向边连接起来
19、。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法E-R图通用的表示方式如下第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法E-R图通用的表示方式如下练习:练习:某企业集团有假设干工厂,每个工厂生产多种新产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的方案数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址;产品的
20、属性有产品编号、产品名、规格;职工的属性有职工号、姓名。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构概念模型的表示方法E-R模型有两个明显的优点:接近于人的思维,容易理解与计算机无关,用户容易接受。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据模型的要素和种类数据模型是严格定义的一组概念的集合,这些概念精确地描述了系统的静态特征(数据结构)、动态特征(数据操作)和数据约束条件,这是数据模型的三要素。1. 数据结构2.数
21、据操作3.数据约束条件第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据结构用于描述系统的静态特征,是所研究的对象类型的集合,这些对象是数据库的组成局部,包括两个方面。数据本身:数据的类型、内容和性质等。例如关系模型中的域、属性、关系等。数据之间的联系:数据之间是如何相互关联的。例如关系模型中的主码、外码联系等。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据操作数据操作是对数据库中的各种对象(型)的实例(值)允许执行的操
22、作集合。数据操作包括操作对象及有关的操作规那么,主要有检索和更新(包括插入、删除和修改)两类。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构数据约束条件数据约束条件是一组完整性规那么的集合。完整性规那么是给定数据模型中的数据及其联系所具有的制约和依存规那么,用以限定符合数据模型的数据库状态及其状态的变化,以保证数据的正确、有效、相容。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构常见的数据模型数据模型是数据库系统的一个关键概
23、念,数据模型不同,相应的数据库系统就完全不同,任何一个数据库管理系统都是基于某种数据模型的。数据库管理系统所支持的数据模型分为4种:层次模型、网状模型、关系模型和关系对象模型。在层次模型、网状模型、关系模型3种数据模型中,关系模型结构简单,数据之间的关系容易实现,因此关系模型是目前广泛使用的数据模型,并且关系数据库也是目前流行的数据库。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系模型关系模型是目前最重要的一种数据模型,关系数据库系统采用关系模型作为数据的组织方式。关系模型是在20世纪70年代初由美国IB
24、M公司的提出的,为数据库技术的开展奠定了理论根底。由于的杰出工作,他于1981年获得ACM图灵奖。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系模型的数据结构关系模型与以往的模型不同,它是建立在严格的数据概念根底上的。关系模型中数据的逻辑结构是一张二维表,它由行和列组成。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系模型的数据结构下面分别介绍关系模型中的相关术语。关系元组属性域分量候选码主码全码主属性和非主属性关系模
25、式第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系一个关系就是一张二维表学号姓名年龄性别所在系2007X1201李小双18女信息系2007D1204张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构元组元组也称记录,关系表中的每行对应一个元组,组成元组的元素称为分量。数据库中的一个实体或实体之间的一个联系均使用一个元组来表示。学号姓名年龄性别所在系2007X1201李小双
26、18女信息系2007D1204张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构属性表中的一列即为一个属性,给每个属性取一个名称为属性名属性具有型和值两层含义:属性的型指属性名和属性值域;属性的值是指属性具体的取值。关系中的属性名具有标识列的作用,所以在同一个关系中的属性名(列名)不能相同。一个关系中通常有个多个属性,属性用于表示实体的特征。学号姓名年龄性别所在系2007X1201李小双18女信息系2007D1204张小玉20女电子系2007J1206王大鹏
27、19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构域属性的取值范围如:性别属性的域是男、女大学生的年龄属性域可以设置为1030等。学号姓名年龄性别所在系2007X1201李小双18女信息系2007D1204张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构分量元组中的一个属性值如:“李小双“男学号姓名年龄性别所在系2007X1201李小双18女信息系2007D12
28、04张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构候选码假设关系中的某一属性或属性组的值能唯一标识一个元组,那么称该属性或属性组为候选码(Candidate key),候选码简称为码。学号姓名年龄性别所在系2007X1201李小双18女信息系2007D1204张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构主码假设一
29、个关系中有多个候选码,那么选定其中一个为主码。学号姓名年龄性别所在系2007X1201李小双18女信息系2007D1204张小玉20女电子系2007J1206王大鹏19男计算机系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构全码在最简单的情况下,候选码只包含一个属性;在最极端的情况下,关系模式的所有属性是这个关系模式的候选码,称为全码。全码是候选码的特例。例如,设有以下关系:学生选课(学号,课程)其中的“学号和“课程相互独立,属性间不存在依赖关系,它的码就是全码。第第1 1章章 理解数据理解数据库库1.1 什
30、么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构主属性和非主属性在关系中,候选码中的属性称为主属性不包含在任何候选码中的属性称为非主属性第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系模式关系的描述称为关系模式,它可以形式化地表示为R(U,D,Dom,F)。其中,R为关系名;U为组成该关系的属性的集合;D为属性组U中的属性所来自的域;Dom为属性向域的映像集合;F为属性间数据依赖关系的集合。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数
31、据模型1.4 关系代数1.5 数据库系统的组成和结构关系模式关系模式通常可以简记为R(U)或R(A1,A2,An)。其中R为关系名,A1,A2,An为属性名。而域名及属性向域的映像常直接称为属性的类型及长度。例如,关系学生学籍表的关系模式可以表示为:学生学籍表(学号,姓名,年龄,性别,所在系)。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系模式关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。第第1 1章章 理解数据
32、理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系的性质(1) 同一属性的数据具有同质性即每一列中的分量是同一类型的数据,它们来自同一个域。(2) 同一关系的属性名具有不可重复性即同一关系中不同属性的数据可出自同一个域,但不同的属性要给予不同的属性名。(3) 关系中列的位置具有顺序无关性即列的次序可以任意交换、重新组织。(4) 关系具有元组无冗余性即关系中的任意两个元组不能完全相同。(5) 关系中元组的位置具有顺序无关性即元组的顺序可以任意交换。(6) 关系中每个分量必须取原子值即每个分量都必须是不可分的数据项。第第1 1章章 理解
33、数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系的完整性关系模型的完整性规那么是对关系的某种约束条件。关系模型中允许定义3类完整性约束:实体完整性参照完整性用户自定义的完整性其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,称为两个不变性,应该由关系系统自动支持;用户自定义的完整性是应用领域需要遵循的约束条件,表达了具体领域中的语义约束。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构实体完整性规那么1.1 实体完整性规那么 假设属
34、性A是根本关系R的主属性,那么属性A不能取空值。例如学生关系“学生(学号,姓名,性别,专业号,年龄)中,“学号为主码,那么“学号不能取空值。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构实体完整性实体完整性规那么规定根本关系的所有主属性都不能取空值,而不仅是指主码不能取空值。例如,学生选课关系“选修(学号,课程号,成绩)中,“学号、课程号为主码,那么“学号和“课程号两个属性都不能取空值。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组
35、成和结构实体完整性对于实体完整性规那么说明如下。(1) 实体完整性规那么是针对根本关系而言的。一个根本表通常对应信息世界的一个实体集,例如学生关系对应于学生的集合。(2) 信息世界中的实体是可区分的,即它们具有某种唯一性标识。(3) 关系模型中以主码作为唯一性标识。(4) 主码中的属性即主属性不能取空值。所谓空值就是“不知道或“不确定的值,如果主属性取空值,就说明存在某个不可标识的实体,即存在不可区分的实体,这与第(2)点相矛盾,因此这个规那么称为实体完整性规那么。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结
36、构参照完整性【例1-1】 学生关系和专业关系表示如下,其中主码用下划线标识。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-2】 学生、课程、学生与课程之间的多对多联系选修可以用如下3个关系表示。学生(学号,姓名,性别,专业号,年龄)课程(课程号,课程名,学分)选修(学号,课程号,成绩)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-
37、3】 学生(学号,姓名,性别,专业号,年龄,班长)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性设F是根本关系R的一个或一组属性,但不是关系R的主码。如果F与根本关系S的主码Ks相对应,那么称F是根本关系R的外码(Foreign Key),并称根本关系R为参照关系,根本关系S为被参照关系或目标关系。关系R和关系S有可能是同一关系。被参照关系S的主码Ks和参照关系R的外码F必须定义在同一个(或一组)域上。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系
38、代数1.5 数据库系统的组成和结构参照完整性【例1-1】 学生关系和专业关系表示如下,其中主码用下划线标识。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-1】 学生关系和专业关系表示如下,其中主码用下划线标识。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-3】 学生(学号
39、,姓名,性别,专业号,年龄,班长)需要指出的是,外码并不一定要与相应的主码同名。但在实际应用中,为了便于识别,当外码与相应的主码属于不同关系时,那么给它们取相同的名字。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性参照完整性规那么 :假设属性(或属性组)F是根本关系R的外码,它与根本关系S的主码Ks相对应(根本关系R和S有可能是同一关系),那么对于R中每个元组在F上的值必须为以下值之一。(1) 或者取空值(F的每个属性值均为空值)。(2) 或者等于S中某个元组的主码值。第第1 1章章 理解数据理解数
40、据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-1】 学生关系和专业关系表示如下,其中主码用下划线标识。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-2】 学生、课程、学生与课程之间的多对多联系选修可以用如下3个关系表示。学生(学号,姓名,性别,专业号,年龄)课程(课程号,课程名,学分)选修(学号,课程号,成绩)第第1 1章章 理解数据理解数据库库1.1 什么是
41、数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构参照完整性【例1-3】 学生(学号,姓名,性别,专业号,年龄,班长)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构用户自定义的完整性用户自定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。例如某个属性必须取唯一值、属性值之间应满足一定的函数关系、某属性的取值范围在0100之间等。例如,性别只能取“男或“女;学生的成绩必须在0100之间。第第1 1章章 理解数据理解数据库库1.1
42、什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它用关系的运算来表达查询第1章 理解数据库运算的三大要素运算的三大要素: :运算对象运算符运算结果关系代数:关系集合运算符专门的关系运算符比较运算符逻辑运算符关系关系代数运算符运算符含义运算符含义集合运算符并差交广义笛卡儿积比较运算符大于大于等于小于小于等于等于不等于专门的关系运算符选择投影连接除逻辑运算符非与或第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结
43、构关系代数的运算按运算符的不同可分为:传统的集合运算专门的关系运算第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构传统的集合运算传统的集合运算是二目运算包括并交差广义笛卡儿积第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设关系R和关系S具有相同的目n(即两个关系都具有n个属性),且相应的属性取自同一个域,那么可以定义并、差、交运算如下1. 并(Union)关系R与关系S的并记作:RS=ttRtS,t是元组变量其结果关系仍为n目
44、关系,由属于R或属于S的元组组成。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCABCa1b1c1a1b2c2a1b2c2a1b3c2a2b2c1a2b2c1R SABCa1b1c1a1b2c2a2b2c1a1b3c2 RS第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设关系R和关系S具有相同的目n(即两个关系都具有n个属性),且相应的属性取自同一个域,那么可以定义并、差、交运算如下2. 差(Difference)关系
45、R与关系S的差记作:R-S=ttRt S,t是元组变量其结果关系仍为n目关系,由属于R而不属于S的所有元组组成。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCABCa1b1c1a1b2c2a1b2c2a1b3c2a2b2c1a2b2c1R S R-SABCa1b1c1第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设关系R和关系S具有相同的目n(即两个关系都具有n个属性),且相应的属性取自同一个域,那么可以定义并、差、交
46、运算如下3. 交(Intersection)关系R与关系S的交记作:RS=ttRtS,t是元组变量其结果关系仍为n目关系,由既属于R又属于S的元组组成。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCABCa1b1c1a1b2c2a1b2c2a1b3c2a2b2c1a2b2c1R S R SABCa1b2c2a2b2c1第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构4. 广义笛卡儿积(Extended Cartesian
47、 Product)两个分别为n目和m目的关系R和S的广义笛卡儿积是一个(n+m)列的元组的集合。元组的前n列是关系R的一个元组,后m列是关系S的一个元组。假设R有k1个元组,S有k2个元组,那么关系R和关系S的广义笛卡儿积有klk2个元组。记作:RS= trRtsSttsr第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCABCa1b1c1a1b2c2a1b2c2a1b3c2a2b2c1a2b2c1R S RSR.AR.BR.CS.AS.BS.Ca1b1c1a1b2c2a1b1c1a1b3c2a1b1c1a
48、2b2c1a1b2c2a1b2c2a1b2c2a1b3c2a1b2c2a2b2c1a2b2c1a1b2c2a2b2c1a1b3c2a2b2c1a2b2c1第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构专门的关系运算专门的关系运算包括:选择投影连接除第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构选择(Selection)选择又称为限制(Restriction),它是在关系R中选择满足给定条件的诸元组,记作:F(R)=t|tR
49、F(t)=真其中,F表示选择条件,它是一个逻辑表达式,取逻辑值为“真或“假。选择运算实际上是从关系R中选取使逻辑表达式F为真的元组,这是从行的角度进行的运算。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构逻辑表达式F的根本形式为:X1Y1X2Y2其中,表示比较运算符,它可以是、 、 、=或;X1、Y1是属性名、常量或简单函数,属性名也可以用它的序号(如1,2,)来代替;表示逻辑运算符,它可以是 (非)、(与)或(或); 表示任选项,即 中的局部可要可不要;表示上述格式可以重复下去。第第1 1章章 理解数据理解
50、数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设有一个学生-课程数据库,它包括以下内容。其关系模式如下。Student(sno,sname,ssex,sage,sdept)Course(cno,cname)Score(sno,cno,degree)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构snosnamessexsagesdept000101李晨男18信息系000102王博女19数学系010101刘思思女18信息系010102王国美女20物理系02
51、0101范伟男19数学系cnocnamesnocnodegreeC1数学000101C190C2英语000101C287C3计算机000101C372C4制图010101C185010101C242020101C370studentcoursescore第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构查询数学系学生的信息。Sdept=数学系 (Student)或5=数学系 (Student)snosnamessexsagesdept000102王博女19数学系020101范伟男19数学系第第1 1章章 理解数据
52、理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构查询年龄小于20岁的学生的信息Sage20 (Student)或420 (Student)snosnamessexsagesdept000101李晨男18信息系000102王博女19数学系010101刘思思女18信息系020101范伟男19数学系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构投影(Projection)关系R上的投影是从R中选择出假设干属性列组成新的关系,记作:A(R)=tA|tR其中A
53、为R中的属性列。投影操作是从列的角度进行的运算。投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复元组,关系操作将自动取消相同的元组。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构查询学生的学号和姓名。Sno,Sname(Student)或1,2(Student)snosname000101李晨000102王博010101刘思思010102王国美020101范伟第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数
54、1.5 数据库系统的组成和结构查询学生关系Student中都有哪些系,即查询学生关系Student在所在系属性上的投影。Sdept(Student)或5(Student)sdept 信息系数学系物理系第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构连接(Join)连接也称为连接,它是从两个关系的笛卡儿积中选取属性间满足一定条件的元组,记作:其中A和B分别为R和S上数目相等且可比的属性组,是比较运算符。连接运算是从R和S的笛卡儿积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上的值满足比较关系的元组。
55、| r srsrsA BR St ttRtStAt B第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构连接运算中有两种最为重要也最为常用的连接:等值连接自然连接第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构等值连接为“=的连接运算称为等值连接,它是从关系R与S的笛卡儿积中选取A、B属性值相等的那些元组,等值连接为:| r srsrsA BR St ttRtStAt B第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2
56、 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,即假设R和S具有相同的属性组B,那么自然连接可记作:| r srsrsR St ttRtSt At B第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCBEa1b15b13a1b26b27a2b38b310a2b412b32b52R S AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2
57、b38b310(一般连接)C ER S第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCBEa1b15b13a1b26b27a2b38b310a2b412b32b52R S (等值连接)AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32.R B S BR S第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构ABCBEa1b15b13a1b26b27a2b38b310a2b412b32b52R
58、S RS(自然连接)ABCEa1b153a1b267a2b3810a2b382第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构除(Division)除操作适合于包含“对于所有的/全部的语句的查询操作。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构关系代数操作举例(强化训练)在关系代数中,关系代数运算经过有限次复合后形成的式子称为关系代数表达式。对关系数据库中数据的查询操作可以写成一个关系代数表达式,或者说,写成一个关系代数表达
59、式就表示已经完成了查询操作。第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设学生-课程数据库中有3个关系。学生关系:S(Sno,Sname,Ssex,Sage)课程关系:C(Cno,Cname,Teacher)学习关系:SC(Sno,Cno,Degree)(1) 查询学习课程号为C3号课程的学生学号和成绩。Sno,Degree(Cno=C3 (SC)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设学生-课程数据库中有3个关系
60、。学生关系:S(Sno,Sname,Ssex,Sage)课程关系:C(Cno,Cname,Teacher)学习关系:SC(Sno,Cno,Degree)(2) 查询学习课程号为C4课程的学生学号和姓名。Sno,Sname(Cno=C4 (SSC)第第1 1章章 理解数据理解数据库库1.1 什么是数据1.2 数据描述1.3 数据模型1.4 关系代数1.5 数据库系统的组成和结构设学生-课程数据库中有3个关系。学生关系:S(Sno,Sname,Ssex,Sage)课程关系:C(Cno,Cname,Teacher)学习关系:SC(Sno,Cno,Degree)(3) 查询学习课程名为maths的学生
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二年级下册数学口算综合练习题 (每页100题)
- 《买玩具》幼儿园大班数学教案
- 《人教版新课标语文六年级上册教案(表格式)》
- 五金安全承诺书
- 湘教版四年级下册语文教案-《一单元-三单元》
- 旅游景区消防改造施工合同
- 供应链管理项目招投标授权书
- 国有企业市场营销策略
- 建筑设备租赁劳务分包协议
- 森林生态效益评估手册
- 干部人事档案任前审核登记表范表
- 北京市道德与法治初一上学期期中试卷及答案指导(2024年)
- 高校实验室安全基础学习通超星期末考试答案章节答案2024年
- 四川省绵阳市高中2025届高三一诊考试物理试卷含解析
- DZ∕T 0283-2015 地面沉降调查与监测规范(正式版)
- 朗致集团逻辑测评试卷2024
- 悬吊技术的临床应
- 精益管理与精益服务
- 用友银企联云服务ppt课件
- 造价审核部岗位职责(共4篇)
- 世界机场四字代码
评论
0/150
提交评论