主讲教师:甘小红 江西财经大学信息管理学院

Slides:



Advertisements
Similar presentations
7.2 数据模型 大学计算机基础. 7.2 数据模型 主要内容 数据模型简介 常用数据模型 常见数据库系统及开发工具.
Advertisements

数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
第六章 数据库技术基础 本章要点  数据库系统概述 数据库系统概述  关系数据库 关系数据库  数据库设计 数据库设计.
数 据 库 基 础 授课:40学时 实验:20学时 徐 旭 袁平波
第7章 数据库基础 本章主要内容 7.1 数据库的概念 7.2 数据模型 7.3 关系数据库 7.4 Access简介
Access数据库基础与应用(第2版).
An Introduction to Database System
数据库系统概论 第一章 绪论 An Introduction to Database Systems
Renmin University of China
Visual FoxPro程序设计与应用.
——Windows98与Office2000(第二版) 林卓然编著 中山大学出版社
第六 章数据库访问页 6.1 数据访问页视图 6.2 创建数据访问页 6.3 编辑数据访问页 6.4 查看数据访问页 退出.
第七章 数据库基础 7.1 数据库系统概述 7.2 数据库的建立和维护.
程序设计 Visual FoxPro 任课教师:王永红 湖南城市学院信息与计算机科学系 普通高等教育“十一五”国家级规划教材
数据库原理与应用 (Visual FoxPro 9.0版)
初级会计电算化 (用友T3) 制作人:张爱红.
数据库及其应用 —第1章 数据库基础 主讲教师:谯英
Access数据库基础 系列教学课件 安丘市职业中专 雷云龙.
第三章 数据类型和数据操作 对海量数据进行有效的处理、存储和管理 3.1 数据类型 数据源 数据量 数据结构
数据库原理与应用 计算机与信息工程学院 1/.
江西财经大学《数据库应用》精品课程组 2015年 钟敏娟 Comments are welcome!
给点阳光我就灿烂 ——工作简历模板.
第1章 数据库系统导论 本章要点:  数据处理的概念  数据管理技术的发展  数据模型  数据库系统体系结构  数据库系统组成
第1章 数据库基础知识 1.1 数据处理技术的发展 1.2 数据抽象与模型 1.3 关系模型.
高级数据库技术 金培权
数据库原理与应用 01 – 绪论 郑捷.
Database Principles & Applications
会计学专业基础课堂之 基础会计(初级会计) 安徽财经大学会计学院.
第2章 关系数据库系统.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
《Visual FoxPro程序设计基础》
Listening and Speaking
Powerpoint Template Company Name
存储系统.
管理信息结构SMI.
点击此处添加幻灯片标题 点击添加幻灯片副标题 本模板来源于网络,由第一课件网整理发布,免费分享给大家使用。
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
第17章 网站发布.
1.3 关系数据库 关系模型 关系完整性约束.
第2章数据基础知识 2.1数据库基本概念 2.1.1数据库技术的发展
数据库设计是信息系统的核心组成部分 从现实世界到数据世界的转换的过程
1.1 数据库基本概念 1.2 数据模型 1.3 关系数据库 1.4 Access2010简介
An Introduction to Database System An Introduction to Database System
C语言程序设计 主讲教师:陆幼利.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
江西财经大学《数据库应用》精品课程组 2011年 Comments are welcome!
数 据 库 应 用 江西财经大学《数据库应用》 精品课程组 2016年 江西财经大学信息管理学院 《数据库应用》课程组.
可编辑的精品3D图表 www. pptbz.com 本模板来源于网络,由17PPT模板网整理发布,免费分享给大家使用。
作业情况 已交作业人数:140人 凡是自己没有交过作业的同学,课后留下,有话要说。 2. 文件名范例: 姓名:王树武 wshw_1.c
标准配色方案 背景 文本和线条 阴影 强调色 主色一 主色二 主色三 主色四 推荐应用顺序. 标准配色方案 背景 文本和线条 阴影 强调色 主色一 主色二 主色三 主色四 推荐应用顺序.
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
商业分析平台-语义元数据 用友集团技术中心 边传猛 2013年 11月 06日.
VB与Access数据库的连接.
第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇.
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
项目二:HTML语言基础.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
1.把下面的关系模式转化为E-R图 1)系(系号,系名,电话) 2)教师(工号,姓名,性别,年龄,系号)
Visual Basic程序设计 第13章 访问数据库
第一章 绪论 1.1 引言 1.2 逻辑结构和存储结构 1.3 算法.
hi-hoo POWER POINT 模板 本模板由hi-hoo专业PPT模板设计公司设计,授权第一课件网发布,免费分享给大家使用。
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
主讲教师:甘小红 江西财经大学信息管理学院
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
基于列存储的RDF数据管理 朱敏
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
点击此处添加标题 PPT背景图片: PPT图表下载:
Chapter 14 Databases.
学习目标 1、什么是列类型 2、列类型之数值类型.
Presentation transcript:

主讲教师:甘小红 1200400870@jxufe.edu.cn 江西财经大学信息管理学院 《数据库应用》 主讲教师:甘小红 1200400870@jxufe.edu.cn 江西财经大学信息管理学院 本模板来源于网络,由第一课件网整理发布,免费分享给大家使用。 第一课件网是国内最专业的PPT模板分享网站,所有模板均经严格测试,保证100%下载,100%精彩! 更多精彩PPT模板,敬请访问http://www.1kejian.com 使用时删除此备注即可。 配色方案修改: 配色方案在【格式】-->【幻灯片设计】-->【配色方案】-->【编辑配色方案】下调整。 LOGO的添加: Logo添加修改在【视图】-->【母版】-->【幻灯片母版】下调整。直接选择logo图片删除或修改。 字体格式的设置: 括标题和文本格式的设置在【视图】-->【母版】-->【幻灯片母版】下调整。 1

第1章 数据库系统概论 数据库技术 数据模型 关系数据库 数据库系统应用模式

本章概要 数据库系统的功能 关系数据库的核心概念(主、外键) 数据库模式的概念 关系数据库的概念建模(E-R模型) 关系操作 关系完整性约束(实体完整性、参照完整性)

1.1 数据库技术 信息与数据 数据处理 数据库系统

1.1.1 信息与数据 数据:是记录现实世界中各种信息并可以识别的物理符号,是信息的载体,是信息的具体表现形式。 数据含义的广义性:字符(文字和符号)、图表(图形、图像和表格)及声音等。

信息与数据 例如:“一匹马”这个信息,我们可以表示为数 1 或者 数据有两方面的特征: 数据的形式(符号),(语法----“1”) 例如:“一匹马”这个信息,我们可以表示为数 1 或者 数据有两方面的特征: 数据的形式(符号),(语法----“1”) 数据的内容(含义),(语义---- “一匹马”)

数据处理实际上是指利用计算机对各种形式的数据进行一系列的存储、加工、计算、分类、检索、传输等处理。 1.1.2 数据处理(2/3) 数据处理实际上是指利用计算机对各种形式的数据进行一系列的存储、加工、计算、分类、检索、传输等处理。

1.1.2 数据处理(1/3) 计算机四大应用 数据处理:工资系统、人口管理、学籍管理等等,占计算机应用的95%。 科学计算:有限元分析、建筑结构力学计算等。 过程控制:炉窑自动温度控制等。 辅助设计:家装CAD、CIMS(计算机集成制造系统)等等。

1.1.2 数据处理(3/3) 主要技术:数据库技术 数据库技术:关系数据库 关系数据库:多种类型数据库 企业(大型)级:DB2(IBM)、ORACLE(ORACLE) 工作组级:SQL SERVER(MS)、MySQL 个人(桌面)级:Access、VFoxPro、SQLite3

数据库的概念 数据库的发展 数据库的特征 数据库的构成 1.1.3 数据库系统 数据库的概念 数据库的发展 数据库的特征 数据库的构成

1. 数据库的概念(1/3) 数据库( Database或Data Base,简称DB )是存放在外存上并通过数据库管理系统(Database Management System,简称DBMS )来存取和访问、管理的数据集中地。 DB文件 …101010101… …010101010…

1. 数据库的概念(2/3) DBS=DB+DBMS+DBA DBS DB文件 DBMS

1. 数据库的概念(3/3) DB:以一定的组织形式存放在计算机存储介质上的相互关联的数据的集合。 DBMS:DBS的核心。为数据库的建立、使用、维护的软件。 DBMS提供用户对DB进行操作的各种命令: 比如,DB的建立、记录的输入、修改、检索、显示、删除和统计等操作管理。 DBA:数据库管理员(Administrator)

目标: 成为关系数据库管理员所必须具备的基础知识。 数据库角色 目标: 成为关系数据库管理员所必须具备的基础知识。 图1-1 数据库系统结构及角色

人工管理阶段 文件管理系统阶段 数据库系统阶段 2. 数据库的发展 人工管理阶段 文件管理系统阶段 数据库系统阶段

时间: 20世纪50年代中期以前 背景: 计算机主要用于科学计算 特点: 数据不保存; 数据冗余度大; 数据与程序之间依赖性大。 人工管理阶段(1/2) 时间: 20世纪50年代中期以前 背景: 计算机主要用于科学计算 特点: 数据不保存; 数据冗余度大; 数据与程序之间依赖性大。

人工管理阶(2/2) 应用程序1 应用程序2 应用程序n 数据集1 数据集2 数据集n …

文件管理系统(1/2) 时间: 20世纪50年代后期至60年代中后期 背景: 计算机已大量用于管理(数据处理) 特点: 数据冗余度大 易造成数据的不一致性 程序与数据相互依赖(数据依赖)

文件管理系统(2/2) 应用程序1 应用程序2 应用程序n 文件1 文件2 文件n 文件 系统 …

时间: 20世纪60年代后期 背景: 计算机应用于社会各个领域 特点: 数据共享性高; 数据冗余度小 数据与程序的独立性高 数据库系统(1/2) 时间: 20世纪60年代后期 背景: 计算机应用于社会各个领域 特点: 数据共享性高; 数据冗余度小 数据与程序的独立性高

数据库系统(2/2) DBMS DB 应用程序1 应用程序2 应用程序n …

数据结构化 实现数据共享 减少数据冗余度 数据独立性 统一的数据安全保护 3. 数据库的特征 数据结构化 实现数据共享 减少数据冗余度 数据独立性 统一的数据安全保护

数据库:核心和管理对象 物理存储设备:大容量的存储器 数据库软件:核心是数据库管理系统(DBMS) 4. 数据库的构成 数据库:核心和管理对象 物理存储设备:大容量的存储器 数据库软件:核心是数据库管理系统(DBMS)

1.2 数据模型(1/4) 人类思维的方式 抽象:忽略不必要的细节、突出主要的问题,建立易于理解的模型来描述。 分治:将大、复杂的问题分解为小、简单的问题,分而治之。通过组合来解决问题。 数据模型是数据库系统中用于提供信息表示和操作手段的形式构架(模型)。

1.2 数据模型(2/4) 二种数据模型 概念模型:它用来描述某一特定范围内人们所关心的信息结构。面向人,按用户的观点来对数据和信息建模,主要用于数据库设计。不涉及信息在计算机中如何表示,独立于计算机实现之外的模型,如实体—联系(E-R)模型。

基本数据模型:直接面向计算机的,是按计算机系统的观点对数据进行建模,主要用于DBMS的实现。 基本数据模型有: 网状模型、层次模型和关系模型 1.2 数据模型(3/4) 基本数据模型:直接面向计算机的,是按计算机系统的观点对数据进行建模,主要用于DBMS的实现。 基本数据模型有: 网状模型、层次模型和关系模型

1.2 数据模型(4/4) 数据抽象过程

1.2.1 数据模型的三要素 数据结构 数据操作 数据的约束条件

数据结构 数据结构是所研究对象和对象具有的特性、对象间的联系的集合,它是对数据静态特性的描述。这些对象是数据库的组成部分。如关系模型中的域、属性、关系等。 在数据库系统中,通常按照数据结构的类型来命名数据模型,如层次结构、网状结构和关系结构的模型分别命名为层次模型、网状模型和关系模型。

数据操作 数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。 通常对数据库的操作有检索和更新(包括插入、删除和修改)两大类,这些操作反映了数据的动态特性,因为现实世界中的实体及实体间的联系是在不断变化的,数据模型应能反映出这种变化。

数据的约束条件是完整性规则的集合。 完整性规则是指给定的数据模型中数据及其联系必须满足给定的要求。

1.2.2 概念模型与实体-联系方法 信息世界中的基本概念 概念模型表示方法

一、信息世界中的基本概念 实体(Entity) 实体集(Entity Set) 实体型(Entity Type) 属性(Attribute) 关键字(Key) 域(Domain) 联系(Relationship) 联系的三种类型

客观存在并可相互区别的事物称为实体。 实体可以是具体的人、事、物,也可以是抽象的概念或联系。 例如,一个具体学生、一门具体课等都是实体。 (1)实体(Entity) 客观存在并可相互区别的事物称为实体。 实体可以是具体的人、事、物,也可以是抽象的概念或联系。 例如,一个具体学生、一门具体课等都是实体。

(2)实体集(Entity Set) 性质相同的同类实体的集合称为“实体集”,也称为实体整体。 例如:所有的(全体)学生、全体所有的汽车、所有的学校、所有的课程、所有的零件都称为实体集。

(3)实体型(Entity Type)(1/2) 具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。 事物的若干属性值的集合可表征一个实体,而若干个属性型所组成的集合可表征一个实体的类型,简称为“实体型”。例如,轿车(车架号,型号,动力,载重,颜色,油耗,车门数)、学生(学号,姓名、性别,出生年份,所在系,入学时间) 答:概念的范畴不同,实体是个体;实体集是集合;实体型是相同实体的抽象,例如:学生是实体型,而王滨是一个具体的学生(为实体)。

(3)实体型(Entity Type)(2/2) 同类型的实体集合组成实体集。 问题:上述三个概念的同异的地方? 答:概念的范畴不同,实体是个体;实体集是集合;实体型是相同实体的抽象,例如:学生是实体型,而王滨是一个具体的学生(为实体)。

(4)属性(Attribute) 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。例如学生实体可以由学号、姓名、性别、出生年份、系、入学时间等属性组成。 属性有“型”和“值”的区分,如学生实体属性的名称:姓名、性别、年龄等是属性的型,而属性的值是其型的具体内容,如王源、男、18分别是姓名、性别、年龄的值。

问 题: 实体和属性同样为名词,如何区分它们? 答:没有唯一的标准,取决于你是如何建立模型的,模型的解释是否合理。即对同一个名词,你在一处地方解释为属性,那么其它地方必须解释为属性。否则自相矛盾。

能唯一标识实体的属性(或属性组合)称为关键字(或码)。例如学号是学生实体的关键字(码)。 本教材中将混用关键字和码这两个概念。 (5)关键字(Key) 能唯一标识实体的属性(或属性组合)称为关键字(或码)。例如学号是学生实体的关键字(码)。 本教材中将混用关键字和码这两个概念。

属性的取值范围称为该属性的域。 例如: 学号的域为8位数字符号,年龄的域为小于128的整数,性别的域为(男,女)。 (6)域(Domain) 属性的取值范围称为该属性的域。 例如: 学号的域为8位数字符号,年龄的域为小于128的整数,性别的域为(男,女)。

1) 一对一的联系(1 : 1) 实体集A中的一个实体至多与实体B中的一个实体相对应,反之亦然。 例如:一个学校只能有一个校长,一个校长也只能在一个学校任职,则学校与校长的联系即为一对一的联系,还有班长与班、学生与座位之间也都是一对一的联系。

(7)联系(Relationship) 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。 实体内部的联系通常是指组成实体的各属性之间的联系。 实体之间的联系通常是指不同实体集之间的联系。 联系有三种类型: 一对一联系(1 : 1) 一对多联系(1 : n) 多对多联系(m : n)

2) 一对多联系(1 : n ) 实体集A中的一个实体与实体B中的多个实体相对应,反之亦然。 例如:一个班级可以有多个学生,而一个学生只会有一个班级,班级与学生的联系即为一对多的联系。 一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例。

3) 多对多联系(m : n) 实体集A中的一个实体至多与实体B中的一个实体相对应,实体集B中的一个实体至多与实体 A中的一个实体相对应。 例如:一门课程可以有多个学生选修,而一个学生同时可以选修多门课程,课程与学生的联系即为多对多的联系。

实体联系模型(Entity-Relationship Model)。 E-R图提供了实体、属性与联系的方法。 E-R使用的符号如下: 二、 概念模型的表示方法(1/3) 实体联系模型(Entity-Relationship Model)。 E-R图提供了实体、属性与联系的方法。 E-R使用的符号如下:

二、概念模型的表示方法(2/3) E-R模型例子(实体间的联系) 一对一模型 一对多模型 多对多模型 1 n 班级 学生 组成 n m 学生 课程 选修 1 学校 校长 管理 一对一模型 一对多模型 多对多模型

E-R模型例子(班级、学生和课程对应的E-R图) 二、概念模型的表示方法(3/3) E-R模型例子(班级、学生和课程对应的E-R图)

1.2.3 数据模型 层次模型( Hierarchical Model) 网状模型(Network Model) 1.2.3 数据模型 层次模型( Hierarchical Model) 网状模型(Network Model) 关系模型(Relational Model) 面向对象模型(Object Oriented Model)

1. 层次模型(1/2) 层次模型用树形结构来表示各类实体以及实体间的联系。 每个结点表示一个记录类型,记录(类型)间的联系用结点之间的连线表示。 层次数据库只能处理一对多的实体联系。

一个层次模型示例

1.层次模型(2/2) 优点: 模型本身比较简单 适用于实体间联系是固定且预先定义好的应用系统 提供良好的完整性支持 缺点: 不便于表示多对多的联系 对插入和删除操作的限制多 查询子女结点必须通过双亲结点 结构严密,层次命令趋于程序化

2. 网状模型(1/3) 网状模型中每个结点表示一个记录类型(实体),每个记录类型可包含若干个字段(属性),结点间的连线表示记录类型之间一对多的父子联系。 网状模型可以更直接地描述现实世界,层次模型是网状模型的一个特例。

2. 网状模型(2/3) 学生/选课课程的网状数据库模式 课程 学生 学生-选课 选课 学号 姓名 … 课程号 课程名 … 学号 课程名 成绩 学生/选课课程的网状数据库模式

2. 网状模型(3/3) 优点: 能够更为直接地描述现实世界 存取效率高 缺点: 结构复杂,不利于最终用户掌握 其数据定义语言,数据操纵语言复杂,不易使用 用户需了解系统结构细节,加重编写应用程序的负担

3. 面向对象模型 对象是现实世界实体的模型化。每个对象都把对象的数据(属性的集合)和操作(程序)封装在一起,并有一个惟一的标识符。 它是目前数据库中最有前途和生命力的模型。

1.3 关系数据库 关系模型 关系完整性约束

1.3.1 关系模型 关系的基本特点 关系的操作 关系模型的优点

1. 关系模型的基本概念(1/7) 关系数据库系统是支持关系数据模型的数据库系统。 免费的关系数据库系统 学习Access理由: MySQL http://www.mysql.com/ SQLite http://www.sqlite.org/ 学习Access理由: 简单、易学习; 具备关系数据库系统的基本概念。 缺点:商业版权的桌面级数据库

(1)关系 一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。 1. 关系模型的基本概念(2/7) (1)关系 一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。

学生表 学号 姓名 性别 出生 日期 成绩 民族 籍贯 班号 贷款否 简历 照片 S0102590 刘嘉美 女 1991-8-10 670 汉族 北京 会计学101 Yes S0082581 石茂麟 男 1991-6-20 浏阳 会计学081 No S0100574 王莉莉 1992-2-2 642 龙岩 与技术101 S0102589 郭玉坤 1991-2-17 壮族 百色 S0082580 吴静婷 1990-3-11 南昌 S0080594 叶志威 1990-1-13 喀什 计算机081 S0092514 张小东 1991-7-25 623 长春 会计学091 …

本教材使用的关系模型

待解释关系模型关键词 关系名 属性 主键 外键

本书使用的关系表 四张贯穿教案的数据表: “班级表”、“学生表”、“课程表”和“成绩表”。 四张贯穿教案的数据表: “班级表”、“学生表”、“课程表”和“成绩表”。 问题:此模式图中成绩表设计有悖于我们通常的理解,如何解释? 数据库模式设计需要复杂的数学知识,称为数据库范式理论(Normal Formula Theory)。如同博客中95%的看客,5%的写客一样,数据库模式的设计为专业人员工作。 只需会使用即可

班级表 班号 学院 专业 年级 人数 班主任 会计学081 会计学院 会计学 2008 会计学091 2009 会计学101 2010 计算机科学与技术081 信息管理学院 计算机科学与技术 计算机科学与技术091 计算机科学与技术101

学生表 学号 姓名 性别 出生 日期 成绩 民族 籍贯 班号 贷款否 简历 照片 S0102590 刘嘉美 女 1991-8-10 670 汉族 北京 会计学101 Yes S0082581 石茂麟 男 1991-6-20 湖南浏阳 会计学081 No S0100574 王莉莉 1992-2-2 642 福建龙岩 计算机101 S0102589 郭玉坤 1991-2-17 壮族 广西百色 S0082580 吴静婷 1990-3-11 江西南昌 S0080594 叶志威 1990-1-13 新疆喀什 计算机081 S0092514 张小东 1991-7-25 623 吉林长春 会计学091 …

课程表 课程号 课程名 简称 学分 课时 课程简介 A0101 计算机引论 jsjyl 5 32 A0301 数据结构 sjjg 4 64 Java程序设计 javacxsj B0101 基础会计 jckj 48 B0301 会计电算化 kjdsh B0501 税法 sf C0101 大学英语I dxyyI 6 C0301 线性代数 xxds C0501 高等数学III gdsxIII

成绩表 学号 课程号 成绩 S0080521 A0501 63 C0501 74 S0080567 78 70 S0080568 S0080594 75 S0080596 67 …

数据表属性数据类型功能 确定具有的运算 其常量表示方法 班级表属性数据类型 数据表属性数据类型功能 确定具有的运算 其常量表示方法

学生表属性数据类型

课程表属性数据类型

成绩表属性数据类型

1. 关系模型的基本概念(3/7) (2)元组 二维表的每一行在关系中称为元组。在Access中,一个元组对应表中一个记录。 (3)属性

(4)域 属性的取值范围称为域。域作为属性值的集合,其类型与范围由属性的性质及其所表示的意义具体确定。同一属性只能在相同域中取值。 1. 关系模型的基本概念(4/7) (4)域 属性的取值范围称为域。域作为属性值的集合,其类型与范围由属性的性质及其所表示的意义具体确定。同一属性只能在相同域中取值。

1. 关系模型的基本概念(5/7) (5)关键字 关系中能唯一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字。单个属性组成的关键字称为单关键字,多个属性组合的关键字称为组合关键字。需要强调的是,关键字的属性值不能取“空值”。所谓空值就是“不知道”或“不确定”的值,因而空值无法唯一地区分、确定元组。

1. 关系模型的基本概念(6/7) (6)候选关键字 关系中能够成为关键字的属性或属性组合可能不是唯一的。凡在关系中能够唯一区分、确定不同元组的属性或属性组合,称为候选关键字。 (7)主关键字(Primary Key--PK) 在候选关键字中选定一个作为关键字,称为该关系的主关键字。关系中主关键字是唯一的。

1. 关系模型的基本概念(7/7) (8)外部关键字(Foreign Key--FK) 关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,称此属性或属性组合为本关系的外部关键字。关系之间的联系是通过外部关键字实现的。 外键功能用来实现表间约束。 (9)关系模式 对关系的描述称为关系模式,其格式为: 关系名(属性名1,属性名2,…,属性名n)

2. 关系的基本特点(1/2) 在关系模型中,关系具有以下基本特点: (1)关系必须规范化,属性不可再分割。 规范化是指关系模型中每个关系模式都必须满足一定的要求,最基本的要求是关系必须是一张二维表,每个属性值必须是不可分割的最小数据单元,即表中不能再包含表。 (2)在同一关系中不允许出现相同的属性名 Access不允许同一个表中有相同的字段名

2. 关系的基本特点(2/2) (3)关系中不允许有完全相同的元组。 (4)在同一关系中元组的次序无关紧要。也就是说,任意交换两行的位置并不影响数据的实际含义。 (5)在同一关系中属性的次序无关紧要。任意交换两列的位置也并不影响数据的实际含义,不会改变关系模式。

3. 关系的操作(1/7) 和算术运算一样 例如:1+2=3中,1、2为操作数,+为操作符。结果为操作数。 关系运算中,关系作为操作数,关系运算符作为操作符。关系运算的结果是一个新的关系。 关系作为一张二维表,其可进行的操作包括: 选择、投影、自然联接。

关系操作根据参与操作的数据表分为: 一元操作符:仅一个数据表参与操作 二元操作符:有二个数据表参与操作 3. 关系的操作(2/7) 关系操作根据参与操作的数据表分为: 一元操作符:仅一个数据表参与操作 二元操作符:有二个数据表参与操作

3. 关系的操作(3/7) 选择操作和投影操作为一元操作符 1.选择操作 例如:下图所示的选择操作是所有少数民族的学生 2.投影操作 给定一个关系,从中筛选出满足某种条件的记录(或元组)的过程称为选择。 例如:下图所示的选择操作是所有少数民族的学生 2.投影操作 给定一个关系,从中只检索期望得到的字段(或属性)的过程称为投影。 如下图所示的投影操作是从学生表得到只有三个字段(学号、姓名、入学成绩)的关系。

3. 关系的操作(4/7) 3.自然联接操作 要求二个关系参与运算,即为二元操作符。 前提条件: 通常这二个关系中,有一个公共的属性(称为联接属性),在一个关系(称为一表)中它是主键,而在另一个关系(称为多表)中它是外键。如 “班级表”(一表)中主键是班级号,而班级号在“学生表”(多表)中是外键。

3. 关系的操作(5/7) 自然联接操作的结果: 在属性上是二个参与运算关系的属性叠加; 在元组上是在多表元组的记录基础上,扩展联接属性相同时的一表对应的数据值。即以多表为准。

自然联接的结果 前提条件:二个表间存在一个外键约束。 3. 关系的操作(6/7) 自然联接的结果 前提条件:二个表间存在一个外键约束。 学生表 姓名 性别 出生日期 少数民族否 班级号 籍贯 入学成绩 简历 照片 班级表 班级号 专业名称 年级 班主任姓名 所在学院 班级人数

自然的等值联接的结果集仍是一个关系 该关系的属性(字段)是两个关系的叠加; 该关系的元组(记录)是以多表为准。 3. 关系的操作(7/7) 学生表 姓名 性别 出生日期 少数民族否 班级号 籍贯 入学成绩 简历 照片 自然的等值联接的结果集仍是一个关系 该关系的属性(字段)是两个关系的叠加; 该关系的元组(记录)是以多表为准。 班级表 班级号 专业名称 年级 班主任姓名 所在学院 班级人数 专业名称 年级 班主任姓名 所在学院 班级人数

4. 关系模型的优点 关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。 关系模型的概念单一,无论实体还是实体之间的联系都用关系表示。对数据的检索结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。 关系模型的存取路径对用户透明(用户无需关心数据存放路径),从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。

实体完整性 参照完整性 域完整性 用户定义完整性 1.3.2 关系完整性约束 实体完整性 参照完整性 域完整性 用户定义完整性

1. 实体完整性 实体完整性是指一个关系中不能存在两个完全相同的记录。一个关系对应现实世界中一个实体集。 实体完整性是通过关系的主关键字(PK)来实现的。应具有某种唯一性标识。 注意:主关键字(主属性)不能取“空值”。否则,表明关系模式中存在着不可标识的实体(因空值是“不确定”的),这与“唯一性标识”相矛盾。

参照完整性是指多表外部关键字的取值必须与一表中某元组主关键字的值相同,否则违反了参照完整性约束。 使用FK实现是二个表之间的约束。 2. 参照完整性 参照完整性是指多表外部关键字的取值必须与一表中某元组主关键字的值相同,否则违反了参照完整性约束。 使用FK实现是二个表之间的约束。

问 题 如何理解实体完整性和参照完整性? 1.具备完整性检查功能的数据库是具备行为能力的数据库,如果插入(修改)的元组违反定义的完整性则数据库系统将不会执行插入(修改)操作。 2.检查是否违法实体(参照)完整性的情况: 实体完整性:涉及一个数据表,其不存在主键值相同的两个元组。 参照完整性:涉及二个数据表,参照完整性是指多表外部关键字的取值必须与一表中某元组主关键字的值相同。

3.域完整性 域完整性是指取值范围必须满足的约束条件。 例如,学生表中的“出生年月”字段,你可以对该字段使用域完整性约束,要求年龄在12到70岁之间,在此范围之外的年龄数据都违法了域完整性要求,数据库将不允许数据进行插入或更新操作。

用户定义完整性是指针对某一具体业务规则提出的关系数据库必须满足的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。 4. 用户定义完整性(1) 用户定义完整性是指针对某一具体业务规则提出的关系数据库必须满足的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。

4. 用户定义完整性(2) 例如,有二个数据表: 一个数据表A的某个属性X存放明细内容; 另一个数据表B存放属性X的求和值, 则数据表B中存放的求和值必须等于数据表A中属性X的求和值,否则数据表B中的求和值就没有意义。 用户定义完整性由于涉及一些复杂的应用领域知识的表示问题,在现有数据库系统中实现功能上不是很完美。

本书使用的关系模型

小钥匙表示主键 表间连线表示参照完整性 标记“1”表示一 标记“∞”表示多 本书使用的关系模型 小钥匙表示主键 表间连线表示参照完整性 标记“1”表示一 标记“∞”表示多

客户/服务器应用模式Client/Server System-C/S) 银行一人服务台 1.4 数据库系统应用模式(1) 客户/服务器应用模式Client/Server System-C/S) 银行一人服务台

浏览器/服务器应用模式(Browser/Server System-B/S) 目前流行的方式 网上逃犯追查系统 选课系统 学籍系统 1.4 数据库系统应用模式(2) 浏览器/服务器应用模式(Browser/Server System-B/S) 目前流行的方式 网上逃犯追查系统 选课系统 学籍系统

几个重要的概念: 关系 元组 主键 外键 实体完整性 参照完整性 投影、选择 自然联接 小 结 几个重要的概念: 关系 元组 主键 外键 实体完整性 参照完整性 投影、选择 自然联接

本章结束 Think You !