SQL第01章数据库系统概述(续)

上传人:tian****1990 文档编号:246062255 上传时间:2024-10-12 格式:PPT 页数:46 大小:238.50KB
返回 下载 相关 举报
SQL第01章数据库系统概述(续)_第1页
第1页 / 共46页
SQL第01章数据库系统概述(续)_第2页
第2页 / 共46页
SQL第01章数据库系统概述(续)_第3页
第3页 / 共46页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第,1,章,数据库系统概述,1.1,计算机数据处理,1.2 数据模型,1.3 数据库应用系统概述,返回目录,1,1.3 数据库应用系统概述,1.3.1 数据库应用系统的组成,1.3.2 数据库管理系统,1.3.3 数据库系统的结构,1.3.4 数据库系统的规范化设计,本章首页,2,1.3.1 数据库应用系统的组成,数据库系统通常是指数据库和相应的软硬件系统。主要由,数据(库),、,用户,、,软件,和,硬件,四部分组成。,1 .数据(库)(DB),数据库是长期存储在计算机内有组织的共享的数据的集合 (,集中式与分布式,) 。,数据库特点如下:,(1.) 集成性:,把数据库看成为若干个单个性质不同的数据文件的联合和统一的数据整体。,(2.) 共享性:,多个不同的用户可同时存取数据库,甚至同时存取同一块数据,即,多用户系统,。,3,1.3.1,数据库应用系统的组成,2. 用户,用户是指使用数据库的人,即对数据库的,存储,、,维护,和,检索,等操作。,用户分为三类:,第一类用户,,终端用户(,End User,),第二类用户,,应用程序员(,Application Programmer,),第三类用户,,数据库管理员(,Database Administrator,,,简称,DBA,),4,1.3.1,数据库应用系统的组成,DBA是指全面负责数据库系统的“管理、维护和正常使用的”人员,其职责如下:,(1)参与数据库设计的全过程,决定数据库的结构和内容;,(2)定义数据的,安全性,和,完整性,,负责分配用户对数据库的,使用权限,和,口令管理,;,(3)监督控制数据库的使用和运行,改进和重新构造数据库系统。当数据库受到破坏时,应负责,恢复数据库,;当数据库的结构需要改变时,完成,对数据结构的修改,。,5,1.3.1,数据库应用系统的组成,3.软件 (Software),负责数据库存取、维护和管理的软件系统,即数据库管理系统(Data Base Management System,简称DBMS),,DBMS是数据库系统的核心软件。,4.硬件(Hardware),存储和运行数据库系统的硬件设备。,包括CPU、内存、大容量的存储设备、外部设备等。,6,1.3.1,数据库应用系统的组成,数据库系统层次结构图如下图,由上图看出:,DBMS,在操作系统(,OS,),的支持下工作,,应用程序在,DBMS,支持下才能使用数据库。,编译系统,OS,硬件,应用系统,应用开发工具,DBMS,本节首页,7,1. 数据库管理系统DBMS的功能,(1). 数据定义,DDL(Data Define Language),定义数据的三级模式结构,定义二级映象,定义有关的约束条件,,(2). 数据操纵,DML(Data Manipulation Language),实现对数据库的基本操作,包括检索、插入、修改、删除等。,SQL语言就是DML的一种。,1.3.2 数据库管理系统,8,(3). 数据库运行管理,DBMS 对数据库的控制主要通过四个方面实现:,数据的安全性控制,数据的完整性控制,多用户环境下的并发控制,数据库的恢复,以确保数据正确有效和数据库系统的正常运行。,(4). 数据库的建立和维护功能,包括数据库的初始数据的装入,,数据库的转储、恢复、重组织,,系统性能监视、分析等功能。,1.3.2 数据库管理系统,9,1.3.2 数据库管理系统,(5). 数据通信,DBMS提供与其他软件系统进行通信的功能。,实现用户程序与DBMS之间的通信,通常与操作系统协调完成。,(6) 数据字典(,Data Dictionary ,DD,),数据库系统中存放三级结构定义的数据库称为数据字典,数据字典中还存放数据库运行时的,统计信息,,例如记录个数、访问次数等。,10,1.3.2 数据库管理系统,2. DBMS的组成,DBMS是许多程序所组成的一个大型软件系统,一个完整的DBMS通常由以下部分组成:, 语言编译处理程序,主要序包括以下2个程序:,1)数据定义语言(DDL)编译程序,:它把用DDL编写的各级源模式编译成各级目标模式。,2)数据操纵语言(DML)编译程序:,它将应用程序中的DML语句转换成可执行程序,实现对数据库的检索、插入和修改等基本操作。,11,1.3.2 数据库管理系统, 系统运行控制程序,主要包括以下几个部分:,1)系统总控程序,2)安全性控制程序,3)完整性控制程序,4)并发控制程序,5)数据存取和更新程序,6)通信控制程序,12,1.3.2 数据库管理系统, 系统建立、维护程序,主要包括以下几个部分:,1)装配程序:,完成初始数据库的数据装入。,2)重组程序:,当数据库系统性能降低时(如查询速度变慢),需要重新组织数据库,重新装入数据。,3)系统恢复程序:,当数据库系统受到破坏时,将数据库系统恢复到以前的正确状态。,13,1.3.2 数据库管理系统,3. 关系型数据库简介, 关系型数据库的定义,关系型数据库是基于关系模型的一种数据库,是一些相关的表和其他数据库对象的集合。,14,1.3.2 数据库管理系统,3. 关系型数据库简介, 关系型数据库的定义,三层含义:,1)在关系数据库中,信息存放在二维表格结构的表(table)中,一个关系数据库包含多个数据表,每一个表又包含行(记录)和列(字段)。,2)这些表之间是相互关联的。表之间的这种关联性是由,主键,和,外键,所体现的参照关系实现的。,3)数据库不仅仅包含表,而且包含了其他数据库对象,如:视图、存储过程、触发器等。,15,1.3.2 数据库管理系统,表1-3 关系数据库术语与其它术语的比较,数据库,理论分析,日常数据处理,表(Table),关系(Relation),文件(File),行(Row),实体(Entity),记录(Record),列(Column),属性(Attribute),字段(Field),16,1.3.2 数据库管理系统, 主键和外键,主键(PRIMARY KEY,简写为PK),是指表中的某一列或几列的组合,该列或列的组合的值惟一地标识一行记录。,主键用于实施实体完整性,即每个表必须有而且仅有一个主键,每一个主键值必须惟一,而且不允许为空值(NULL)。,例如学生表的主键是学号,教师表的主键是教师编号;,17,1.3.2 数据库管理系统, 主键和外键,外键(FOREIGN KEY,简写为FK),是指一个表中含有与另一个表的主键PK相同的列组,那么该列组称为外键,外键并不要求惟一。,例如学生表里面有一个属性是班主任(教师编号),教师编号又是教师表的主键,那么称教师编号为学生表的外键。,18,1.3.2 数据库管理系统,创建外键的优点:,1) 提供了表与表之间的连接。,2) 根据主键的列值来检查参照该主键的外键列值的合法性,保证了外键的每一个列值都是一个有效的PK值而实施参照完整性。,19,1.3.2 数据库管理系统, 主键和外键,公共键(COMMON KEY),是指如果两个表中具有相同的列或列组,这个列或列组称为这两个表的公共键。,外键是特殊的公共建;,20,1.3.2 数据库管理系统, 关系数据库的特点,最重要的是必须保证数据的完整性。,排除大多数的冗余数据,减少了对存储空间的需求,加快了数据访问的速度;,应用程序可以通过多级的安全检查来限制对数据的访问。,21,1.3.2 数据库管理系统, 几种常见的关系数据库简介,1)ORACLE,公司的数据库产品功能繁多而且特别强大,拥有多平台发行的版本,适用于大型、中型和微型机系统,但需要较多的硬件资源支持,操作起来比较复杂;,2)Sybase公司的数据库产品,Sybase,是世界上第一个真正基于C/S结构的关系数据库产品,可以在多种不同的操作系统中运行;,3)微软公司量身定做的,SQL Server,系列产品运行在微软自己的Windows 或Windows 200X Server系统上,拥有低成本的硬件平台、最先进的引擎、最多的功能、最简单的管理。,4)IBM公司,DB/2系列,的产品一般适合于IBM自己的大型机系统,如IBM Framework主机。,本节首页,22,1.3.3 数据库系统的结构,1数据库系统的三级模式结构,数据库系统内部的体系结构分为三级:外模式、概念模式和内模式, 外模式,外模式是三级结构的最外层,又称子模式或用户模式,它是用户看到并允许使用的那部分数据的逻辑结构。DBMS提供子模式描述语言(子模式DDL)来定义子模式。,23,1.3.3 数据库系统的结构,1数据库系统的三级模式结构, 概念模式,简称模式(Schema),是数据库中全体数据的逻辑结构和特征的描述。,概念模式处于三级结构的中间层,是整个数据库实际存储的抽象表示,既包含了数据库的整体逻辑;,也是对现实世界的一个抽象,是现实世界某应用环境(企业或单位)的所有信息内容集合的表示,也是所有个别用户视图综合起来的结果。,24,1.3.3 数据库系统的结构, 内模式,又称存储模式,是三级结构中的最内层,也是靠近物理存储的一层,即与实际存储数据方式有关的一层。,它是对数据库存储结构的描述,是数据在数据库内部的表示方式。存储模式与物理级数据相互对应,DBMS提供内模式描述语言(内模式DDL)来定义内模式。,25,1.3.3 数据库系统的结构,概念级数据库只不过是物理级数据库的一种抽象描述,用户级数据库是用户与数据库的接口。,用户根据外模式进行操作,通过外模式到概念模式的映射与概念级数据库联系起来,又通过概念模式到内模式的映射与物理级数据库联系起来。,DBMS,的中心工作之一就是完成三级数据库间的转换,把用户对数据库的操作转化到物理级去执行。,26,1.3.3 数据库系统的结构,2数据库系统的二级映射, 模式内模式映射,数据库中的模式和内模式都只有一个,所以模式内模式映射是惟一的。,通过映射功能保证数据存储结构的变化不影响数据的全局逻辑结构的改变,从而不必修改应用程序,确保了数据的物理独立性。,27,1.3.3 数据库系统的结构, 外模式模式映射,数据库中的同一模式可以有任意多个外模式,对于每一个外模式都存在一个外模式模式映射。,它确定了数据的局部逻辑结构与全局逻辑结构之间的对应关系。,由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序不必修改,从而保证了数据与程序间的逻辑独立性。,本节首页,28,1.3.4 数据库系统的规范化设计,1. 数据库的设计任务与内容,设计任务:在DBMS的支持下,按照应用的要求,为某一部门或组织设计一个结构合理、使用方便、运行效率较高的数据库及其应用系统。,设计内容:,一是结构设计,也就是设计数据库框架或数据库结构;,二是行为设计,即设计应用程序、事务处理等。,29,1.3.4 数据库系统的规范化设计,2. 数据库的设计方法,目前,常用的各种数据库设计方法都属于,规范化设计法,,即都是运用软件工程的思想与方法,根据数据库设计的特点,提出了各种设计准则与设计规程。这种工程化的规范设计方法也是在目前技术条件下设计数据库最实用的方法。,30,1.3.4 数据库系统的规范化设计,3. 数据库的设计步骤, 需求分析,数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。了解数据流程,数据的使用情况,并做出分析。需求分析是整个设计过程的基础,也是最困难、最耗费时间的一步。,31,1.3.4 数据库系统的规范化设计, 概念结构设计,进行严格、准确的用户需求分析后,下一步应该考虑如何实现用户的这些需求。在将现实世界需求转化为机器世界的模型之前,先以一种独立于具体数据库管理系统的逻辑描述方法来描述数据库的逻辑结构,即设计数据库的概念结构。,32,1.3.4 数据库系统的规范化设计, 逻辑结构设计,逻辑结构设计是将抽象的概念结构转换为所选用的DBMS支持的特定数据模型,并对其进行优化,形成数据库的逻辑模式。逻辑结构设计分为三个步骤:,将概念结构阶段设计好的概念结构转换为一般的数据模型,如关系、网状或层次模型。,将转换后的一般数据模型转化为特定DBMS所支持的特定数据模型。,对特定的数据模型进行优化。,33,1.3.4 数据库系统的规范化设计, 数据库物理设计,数据库的物理设计一般包括以下几个方面:,表设计,约束设计,视图设计,安全性设计,业务规则的实现,确定系统配置,34,1.3.4 数据库系统的规范化设计,4. 数据库关系模式的规范化设计,规范化的目的如下所述:,1)减少冗余数据。,2)避免插入、删除、更新异常。,3)减少不相容数据。,4)使设计的数据结构更容易维护。,关系数据库中的关系必须遵循一定的规则,这种规则就是范式。,35,1.3.4 数据库系统的规范化设计,4. 数据库关系模式的规范化设计,规范化理论使用范式来描述所希望的表和列的安排方式。目前关系数据库有六种常见的范式:,第一范式(Fisrt Normal Form ,1NF),第二范式(2NF),第三范式(3NF),Boyce-Codd范式(BCNF),第四范式(4NF),第五范式(5NF),36,1.3.4 数据库系统的规范化设计, 关系模式的几个基本概念,主键:,惟一标识实体的的属性或属性组合的集合称为键。,候选关键字,:该属性集中的属性或属性组合称为。,主关键字,:若侯选关键字多于一个,则选定其中一个做主关键字。,组合关键字,:如果候选关键字不是单一属性,而是几个属性的组合,称为组合关键字。,非主属性,:包含在任意一个侯选关键字中的属性称为主属性,不包含在任意一个侯选关键字中的属性称为非主属性。,全关键字,:关系模式中所有属性的组合才能作为键,称之为全关键字。,37,1.3.4 数据库系统的规范化设计, 第一范式,如果一个关系模式R的所有属性都是不可分割的即是第一范式(1NF),记作R1NF。,例如,如果关系模式P(学号、姓名、性别、年龄、所在系)用来存储学生信息,这里所有的属性都是不可分割的数据最小单位,因此关系模式P是第一范式。,如果模式P中加入电话号码这个属性,由于电话号码有手机号码、家庭电话号码等多个属性值,不是不再可分的最小数据单位,因此,模式P便不再是第一范式。,38,1.3.4 数据库系统的规范化设计, 第二范式,如果一个关系模式R1NF,且它的任一个非主属性必须完全依赖于任一个主关键字,则该模式属于第二范式(2NF),记作R2NF。,例如,关系模式SLC(学号、姓名、性别、课程号、成绩、所在系、住处)用来存储学生选修课程的成绩;,现将关系模式SLC分解为两个关系模式:,SC(学号、课程号、成绩),SL(学号、姓名、性别、所在系、住处),分解后的关系模式SC(主关键字:学号、课程号)和SL(主关键字:学号)中非主关键字对主关键字都是完全依赖了。所以SC、SL属于第二范式,39,1.3.4 数据库系统的规范化设计, 第三范式,如果一个关系模式R2NF,并且它的所有非主属性都不传递依赖于主关键字,则称R满足第三范式,记作R3NF。 显然,第三范式要求非候选关键字互不依赖,也就是说,满足第三范式的数据库中的表中的列不包含已在其它表中包含的非主关键字信息。,40,1.3.4 数据库系统的规范化设计, 第三范式,显然关系模式SC(学号、课程号、成绩)没有传递依赖,因此,SC3NF。而关系模式SL(学号、姓名、性别、所在系、住处)中,所在系依赖于学号,住处依赖于所在系,可以得知,住处传递依赖于学号。因此,关系模式SL,3NF。,现将关系模式SL分解为三个关系模式:,SCS(学号、姓名、性别),SD(学号、所在系),DL(所在系、住处),分解后的关系模式不在存在传递依赖,因此模式SCS、SD、DL属于第三范式 。,41,1.3.4 数据库系统的规范化设计, BCNF范式,BCNF范式是由Boyce和Codd于1974年提出的,比上述的3NF又进了一步。通常认为BCNF是修正的第三范式,有时也称为扩展的第三范式。,如果一个关系模式R中的所有属性包括主属性和非主属性都不传递依赖于任意候选关键字,则称R满足BCNF范式,记作RBCNF。,42,1.3.4 数据库系统的规范化设计,设关系模式SNC(学号,学生姓名,课程号,成绩),假设学生姓名没有重名,可以得知,SNC有两个候选键(学号,课程号)和(学生姓名,课程号),其依赖关系如下:,学号,学生姓名,(学号,课程号)成绩,(学生姓名,课程号)成绩。,关系模式SNC中唯一的非主属性“成绩”对键不存在部分依赖,也不存在传递依赖。所以SNC,3NF。但是,存在着主属性对键的部分依赖:“学生姓名”部分依赖于(学号,课程号),学生姓名部分依赖于(学生姓名,课程号),所以SNC不是BCNF。,43,1.3.4 数据库系统的规范化设计,将SNC分解成如下两个关系:,S1(学号、学生姓名),描述学生实体;,S2(学号、课程号和成绩),描述学生与课程的联系。,对于关系模式S1,有两个候选键“学号”和“学生姓名”,关系模式S2,主键为(学号、课程号)。在这两个关系中,无论主属性还是非主属性都不存在对键的部分依赖和传递依赖,因此,S1,BCNF,S2,BCNF。,44,1.3.4 数据库系统的规范化设计, 规范化小结,关系模式规范化的基本步骤如下:,1NF,关系进行投影,消除原关系中非主属性对键的部分依赖,将,1NF,关系转换成若干个,2NF,关系。,对,2NF,关系进行投影,消除原关系中非主属性对键的传递依赖,将,2NF,关系转换成若干个,3NF,关系。,对,3NF,关系进行投影,消除原关系中主属性对键的部分依赖和传递依赖,也就是说使决定因素都包含一个候选键。得到一组,BCNF,关系。,本节首页,45,小结,掌握数据库应用系统的组成;,掌握关系型数据库的基本概念;,了解三级模式、二级映射;,掌握关系模式的规范化设计;,本节首页,46,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!