首页 oracle基础教程 第1章 数据库模型

oracle基础教程 第1章 数据库模型

举报
开通vip

oracle基础教程 第1章 数据库模型oracle基础教程 第1章 数据库模型 微思 Oracle 数据库基础应用 第1章 数据库模型 第1章 数据库模型 学习目标 了解…数据库相关概念,以及关系型数据库概念 数据库的定义,关系型数据库模型,ORACLE数据库管理系统体系结构 理解… 掌握…关系型数据库E-R建模,ORACLE数据库体系结构的组成及相关概念 课前准备 数据库基本理论 数据库设计E-R模型 数据库设计范化 Oracle数据库体系结构 1.1本章简介 本章主要介绍数据库的基本知识,主要包括如下内容:与数据库相关的定义;...

oracle基础教程 第1章 数据库模型
oracle基础 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 第1章 数据库模型 微思 Oracle 数据库基础应用 第1章 数据库模型 第1章 数据库模型 学习目标 了解…数据库相关概念,以及关系型数据库概念 数据库的定义,关系型数据库模型,ORACLE数据库管理系统体系结构 理解… 掌握…关系型数据库E-R建模,ORACLE数据库体系结构的组成及相关概念 课前准备 数据库基本理论 数据库 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 E-R模型 数据库设计范化 Oracle数据库体系结构 1.1本章简介 本章主要介绍数据库的基本知识,主要包括如下内容:与数据库相关的定义;关系型数据库E-R建模;同时着重介绍了oracle数据库管理系统体系结构的主要方面:物理结构、逻辑结构、后台进程及相关工作原理,本章内容是本书的基本章节,深入理解本章内容有助于以后章节的学习与实践。 1.2数据库基本知识 当今人类社会已经进入了信息化时代,信息资源已经成为了人们生活中必不可少的重要而宝贵的资源。作为信息系统核心技术和重要基础的数据库技术有了飞速发展,并得到了广泛的应用。 由于大量的信息以数据的形式存于计算机系统中,为了方便人们查询、检索、处理加工,传播需要的信息,这就提出了需要对数据进行分类,组织、编码、存储检索和维护的数据库管理工作。而数据库管理技术本身也经历了长足的发展,先后经历了人工管理,文件系统和数据库系统三个阶段。 在人工管理阶段数据处理都是通过手工进行的,这种数据处理数据量少,数据不保存,没有软件系统对数据进行管理,这种管理方式对程序的依赖性太强,并且大量数据重复冗余。为了解决手工进行数据管理的缺陷,随着技术发展提出了文件管理的方式,解决了应用程序对数据的强依赖性问题,给程序和数据定义了数据存取公共接口,数据可以长期保存,数据不属于某个特定的程序,使数据组织多样化了(如:索引、链接文件等技术),但仍然存在大量数据冗余,数据不一致性,数据联系弱的特点(文件之间是孤立的,整体上不能反映客观世界事物内在联系),为了解决文件数据管理的缺点,人们提出了全新的数据管理的方法:数据库系统,该方法充分地使用数据共享,交叉访问,与应用程序高度独立,而数据库系统根据其建立的模型基础的不同而不同,其中最为广泛使用的是建立在关系模型基础之上的关 - 1 - 微思 Oracle 数据库基础应用 第1章 数据库模型 系型数据库,如:Oracle数据库系统,SQL SERVER数据库管理系统等。这类数据库系统满足关系模型的三大要素:关系数据结构,关系操作集合,关系完整约束。以下我们将介绍这关系型数据库的特点。 1.2.1 数据库的特点 数据(DATA):数据是描述现实世界事物的符号标记,是指用物理符号记录下来的可以鉴别的信息。包括:数字、文字、图形、声音、及其他特殊的符号。 数据库(DATABASE):按照一定的数据模型组织存储在一起的,能为多个应用程序共享的,与应用程序相对独立的相互关联的数据集合。 数据库管理系统(DBMS-Database Management System):是指帮助用户使用和管理数据库的软件系统。 数据库管理系统通常由以下三个部分组成: 用来描述数据库的结构,用户建立数据库的数据描述语言DDL 供用户对数据库进行数据的查询和存储等数据操作语言DML 其它的管理与控制程序(例如:TCL事务控制语言,DCL数据控制语言等) 数据库具有以下特点: 数据的结构化 数据共享 余 减少数据冗 优良的永久存储功能 1.2.2 关系型数据库 关系型数库:是以关系数学模型来表示的数据。关系数学模型以二维表的形式来描述数据。一个完整的关系型数据库系统包含5层结构(由内往外) 用户 关系型数据库应用系统 关系型数据库管理系统、数据库 操作系统 硬件 - 2 - 微思 Oracle 数据库基础应用 第1章 数据库模型 图:1-1关系数据库系统5层结构 硬件 硬件是指安装数据库系统的计算机,包括两种。 服务器、客户机 操作系统 操作系统是指安装数据库系统的计算机采用的操作系统。 数据库、关系型数据库管理系统 关系型数据库是存储在计算机上的,可共享的、有组织的关系型数据的集合。 关系型数据库管理系统是位于操作系统和关系型数据库应用系统之间的数据库管理软件,它通常由以下三个部分组成:用来描述数据库的结构,用来建立用户数据库的数据描述语言DDL;供用户对数据库进行数据的查询和存储等操作的数据库操作语言DML;其它的管理和控制程序。 关系型数据库应用系统 关系型数据库应用系统指为满足用户需求,采用各种应用开发工具和开发技术开发的数据库应用软件 用户 用户是指和数据库打交道的人员,包括如下三类人员: 最终用户:应用程序的使用者,通过应用程序与数据库进行交互; 数据库应用系统开发人员:是指在开发周期内,完成数据库结构的设计,应用程序开发等任务; 数据库管理员:就是我们通常所说的数据库DBA,其职能就是对数据库做日常管理,如:数据备份,数据库监控,性能调整,安全监控与调整等任务。 1.3 数据库设计E-R模型 人们在现实生活中把需要实现的事物的数据特征按某种方式进行抽象,以便能够准确的,方便的表示信息世界,这种“抽象方式”就是使用合适的模型来描述信息世界。其中最 - 3 - 微思 Oracle 数据库基础应用 第1章 数据库模型 常用的就是E-R模型:即实体-联系法。这种方法接近人的思维,与计算机无关、冗余被用户接受,所以人们在设计数据库,把现实世界抽象为概念结构的时候总是常用E-R模型来描述之。接下来我们将介绍概念设计中的E-R模型表示法。 1.3.1 概念结构(概念模型) 概念结构是对现实世界中的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述。概念结构的要点和图解如下: 概念结构独立于数据库逻辑结构,也独立于支持数据库的DBMS,不受其约束。 它是现实世界与机器世界的中介,它一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又易于向关系、网状、层次等各种数据模型转换。 它应是现实世界的一个真实模型,易于理解,便于和不熟悉计算机的用户交换意见,使用户易于参与。 当现实世界需求改变时,概念结构又可以很容易地做相应调整。因此概念结构设计是整个数据库设计的关键所在。 概念设计 逻辑设计 物理设计 层次 关系,网状, 客观事物 概念结构 数据模型 DBMS 数据库管理 用户要求 系统(语义和结构) 强调结构描述 机器世界 强调语义描述 现实世界 信息世界 抽象 推理 实现 图1-2 概念设计模型 1.3.2 概念结构的设计方法 设计概念结构通常有四类方法: 自顶向下:即首先定义全局概念结构的框架,然后逐步细化。 自底向上:即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构。 逐步扩张:首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构。 - 4 - 微思 Oracle 数据库基础应用 第1章 数据库模型 混合策略:即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。 其中最经常采用的策略是自顶向下地进行需求 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 ,然后再自底向上地设计概念结构。整个过程是:数据抽象与局部视图(E-R)设计?视图的集成(全局E-R)。 但无论采用哪种设计方法,一般都以E-R模型为工具来描述现实世界的概念结构模型: E-R模型为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。 E-R模型容易理解,接近于人的思维方式,并且与计算机无关。 E-R模型本身是一种语义的模型,模型力图去表达数据的意义。 E-R模型只能说明实体间的语义联系,不能进一步说明数据结构。 1.3.3 E-R模型的重要概念: 实体:在E-R模型中,实体用矩形表示,矩形内写明实体名,是实现世界中可以区别于其他对象的“事件”或“事物”如威迅公司中每个人都是实体,每个实体都由一组特性(属性)来表示。其中某一部分属性可以唯一标识实体,如员工编号。实体集是指具有属性的实体集合。比如威迅培训班中的老师和学生可以分别定义为两个实体集。 联系:在E-R模型中,联系用菱形表示,菱形内写明实体联系名,并用无向边分别与有关的实体联系在一起,同时在无向边旁标注联系的类型:1:1或1:N或M:N;同时联系分为:实体内部的联系和实体之间的联系。实体内部之间的联系反映数据在同一记录内部各字段间的联系。我们当前主要讨论实体集之间的联系,在两个实体集之间,两个实体存在如下三种对应关系: 中一个实体相联系,记为1:1,就如 1.一对一:实体集中一个实体最多只与一个实体集 电影院里一个座位只有能坐一个观众。 2.一对多:实体集中一个实体与一个实体集中多个实体相联系。记为:1:n,就如部门和员工( 假如:一个员工只能属于一个部门),一个部门对应多名员工。 3.多对多:实体集中多个实体与另一个实体集中的多个实体相联系,记为:m:n,就如项目和职工,一个项目多名员工,每个员工可以同时进行多个项目。老师与学生之间就是多对多的联系。 属性:就是实体某方面的特性。如员工的姓名、年龄、工作年限、通讯地址等。 1.3.4 抽象的几种方法 概念结构是对现实世界的一种抽象,一般有三种抽象: 分类:(is member of) 聚集(is part of) 概括(is subset of) 以实体学生为例 学生 张三 王五 - 5 - 微思 Oracle 数据库基础应用 第1章 数据库模型 李四 李六 图1-3 分类(共同特征) 学生 姓名 学号 年龄 性别 图1-4 聚集(组成) 学生 本科学生 专科学生 研究生 进修生 图1-5 概括 (包括) 1.3.5 建立E-R图时应避免冲突和冗余 我们建立E-R图往往是一部分一部分的去完成,就好象做一个普通事情一样,做事总有个先后,建立E-R图也不例外,往往先划分E-R图,然后把画好的各部分E-R图合并起来,此时往往会产生冲突或冗余,各部分之间的冲突主要有三类:属性冲突、命名冲突和结构冲突。 属性冲突:(1)属性域冲突,即属性值的类型、取值范围或取值集合不同。 例如:属性“零件号”有的定义为字符型,有的为数值型。(2)属性取值单位冲突。例 如:属性“重量”有的以克为单位,有的以公斤为单位。 命名冲突:(1)同名异义。不同意义对象相同名称。(2)异名同义(一义多名)。同意 义对象不同名称:“项目”和“课题”。 结构冲突:(1)同一对象在不同应用中具有不同的抽象。例如“课程”在某一局部应用 中被当作实体,而在另一局部应用中则被当作属性。(2)同一实体在不同局部视图中所 包含的属性不完全相同,或者属性的排列次序不完全相同。(3)实体之间的联系在不同 局部视图中呈现不同的类型。例如实体E1与E2在局部应用A中是多对多联系,而在 局部应用B中是一对多联系;又如在局部应用X中E1与E2发生联系,而在局部应用 Y中E1、E2、E3三者之间有联系。解决方法是根据应用的语义对实体联系的类型进行 - 6 - 微思 Oracle 数据库基础应用 第1章 数据库模型 综合或调整。 除冲突之外,合并E-R图需要注意的冗余问题: 冗余属性的消除:一般在各E-R图中属性是不存在冗余的,但合并后容易出现冗余属性。因为合并后的E-R继承了合并前各E-R图的全部属性,属性就存在冗余的可能,比如:某一属性可以由其它属性确定。 冗余联系的消除:在E-R图合并过程中,可能出现实体联系的环状结构,即某实体A和某实体B有直接联系。同时它们之间有通过别的实体发生间接联系,此时可以删除直接联系; 实体类型的合并:两个具有1:1联系或1:n联系的实体可以予以合并。 1.3.6 一个E-R模型实力 为了能够把客观事物(用户要求)进行概念设计,转换成概念结构,以便下一步进行逻辑设计,我们选择E-R模型来表示概念结构,这里举一个我们熟悉的学生选修课程的例子,让我们能很好的理解E-R模型概念表示法: 示例:假设某学校某班的学生需要选修课程,同时学生想知道他们的班主任任课情况。 我们作如下分析: 首先我们可以从示例描述中得出如下客观事物: 因为示例提出的是某一个班主任,那么必然有一个班主任,而且是一个班主任老师,非多个,这符合实现客观情况。 班主任表: 王老师 示例中是学生选修课程,那么肯定有学生列表,一般情况下,一个班级有多个学生,非一个学生。那么我们得出有学生对象表。 学生表: 黎明 王小 赵华 利斯 . . . . 在示例中显然还有课程对象以供学生选课及班主任任课。 课程表: - 7 - 微思 Oracle 数据库基础应用 第1章 数据库模型 自然 历史 C语言 Java语言 . . . . 根据以上分析,以及使用数据抽象方法我们得出示例中有三个实体: 这三个实体分别是:学生、班主任、课程; 1.实体属性如下: 学生(学号、姓名、年龄、性别) 班主任(教师号、教师姓名) 课程(课程号、课程名、学分) 2.各实体之间的联系有:班主任担任课程的1:n“任课”联系;学生选修课程的n:m “选修”联系;班主任和学生的“所属”联系1:n。 至此我们得出学生选课,和班主任任课情况E-R模型如下图: 学号 姓名 年龄 性别 教 师 号 学生 教授 班主任 成绩 选 修 任课 教 师 名 课程 课程号 课程名 学分 图:1-6 一个基本的完整E-R图 - 8 - 微思 Oracle 数据库基础应用 第1章 数据库模型 1.3.7 E-R模型向关系模型的转换 从E-R模型向关系模型转换时,所有实体和联系都要转换成相应的关系模式,转换 规则 编码规则下载淘宝规则下载天猫规则下载麻将竞赛规则pdf麻将竞赛规则pdf 如下: 每个实体类型转换成一个关系模式。 一个1:1的联系可以转换为一个关系模式,或与任意一端的关系模式合并,若独立转换为一个关系模式,两端的关系码及联系的属性为该关系的属性;若与一端合并,那么将另一端的关系码及联系的属性合并到该端。 一个1:n的联系可以转换成一个关系模式,或与n端的关系模式合并。若独立转换为一个关系模式,两端的关系码及联系的属性为该关系的属性。N端的关系码为该关系的码。 一个m:n的联系可以转换成一个关系模式,那么两端的关系码及联系的属性为该关系的属性,关系的码为两端实体码的组合。 3个或3个以上的多对多的联系可以转换为一个关系模式,那么这些关系的码及联系的属性为关系的属性,而关系的码为各个实体码的组合。 具有相同码的关系可以合并。 根据上述原则:将图:1-6转换为关系模式如下: 学生(学号、姓名、年龄、性别、老师编号):这符合转换规则中1:n的关系。 课程(课程号、课程名、学分、老师编号):老师和课程实体之间,这符合转换规则中1:n的关系。 班主任(教师号,教师姓名) 将实体学生和课程m:n的关系转化成关系模式(学生号、课程号、成绩) 。 1.4 范式 上面我们通过举例说明了E-R模型向关系模式转换的方法与原则,但是这样转换得来的初始关系模式并不能完全符合要求,还会有数据冗余,更新异常等问题的存在,那么使得我们在构造数据库时还必须遵循一定的规则(如:依赖)进行规范化设计。在关系数据库中,这种规范化设计规则就是范式,范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式,目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2NF),其余范式依此类推。一般说来,数据库只需满足第三范式(3NF)就行了。二范式(2NF),其余范式依此类推。一般说来,数据库只需满足第三范式(3NF)就行了。下面我们举例介绍第一范式(1NF)、第二范式(2NF)和第三范式(3NF) 1.4.1第一范式(1NF) 在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项。同一列中不能有多个值,即实体中某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性, - 9 - 微思 Oracle 数据库基础应用 第1章 数据库模型 就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系,在第一范式(1NF)中表的每一行只包含一个实例的信息。如果关系模式的每一个属性都不可分解(即:就是数据表的每一列不可再分,无重复的列),则称该关系模式为第一范式: 实例如: 1:不满足第一范式的实例: 员工表 员工的名称 员工职务 员工薪水和住址 黎明 程序员 2000.00,苏州市 枭雄 软件工程师 1500.00,上海市 王丽 项目经理 8000.00,苏州市 里程 总经理 10000.00,北京市 很明显上例中第三列“员工薪水和住址”属性可以再分拆,不符合第一范式的定义; 2.满足第一范式的例子: 员工表 员工的名称 员工职务 员工薪水 住址 黎明 程序员 2000.00 苏州市 枭雄 软件工程师 1500.00 上海市 王丽 项目经理 8000.00 苏州市 里程 总经理 10000.00 北京市 很明显上例满足第一范式,因为每列都不能分拆,无重复的列,属性单一。 1.4.2 第二范式(2NF) 第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2FN)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或行必须可以被惟一的区分。为实现区分通常需要为表加上一个列,以存储各个实例的惟一标识,这个惟一属性列被称为关键字或主键、主码。 第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字的一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来,形式一个新的实体,新实体与原实体之间是一对多的关系,为实现区分通常需要为表加上一个列,以存储各个实例的唯一表示。简而言之,第二范式就是非主键属性非部分依赖于关键字。 以下是满足第二范式的例子: 员工表 员工号 员工的名称 员工职务 员工薪水 住址 0001 黎明 程序员 2000.00 苏州市 0002 枭雄 软件工程师 1500.00 上海市 0003 王丽 项目经理 8000.00 苏州市 0004 里程 总经理 10000.00 北京市 在这个例子中除了满足第一范式的同时增加了主键,是唯一标识一个员工,符合第二范式的要求。 - 10 - 微思 Oracle 数据库基础应用 第1章 数据库模型 1.4.3 第三范式(3NF) 满足第三范式(3NF)必须先满足第二范式(2NF)。简而言之,第三范式(3NF)要求一个数据库表中不包含已在其他表中已包含的非主关键字信息。 以下是满足第三范式的简单例子: 部门表 部门号 部门名称 部门主管 1001 开发部 王维 1002 人事部 李白 1003 总办 杜甫 1004 行政部 罗斯福 员工表 员工号 员工的名称 员工所在部门编号 员工职务 员工薪水 住址 0001 黎明 1001 程序员 2000.00 苏州市 0002 枭雄 1002 软件工程师 1500.00 上海市 0003 王丽 1003 项目经理 8000.00 苏州市 0004 里程 1004 总经理 10000.00 北京市 员工信息表中列出部门编号后就不能再将部门名称等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。简而言之,第三范式是属性不依赖于其它非主键属性。 1.4.4范式小结 目的:数据库设计规范化的目的是使结构更合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新数据。 原则:遵从概念单一化“一事一地”原则,即一个关系模式描述一个实体或实体间的一种联系。规范的实质就是概念单一化。 方法:将关系模式投影分解成两个或两个以上的关系模式。 要求:分解后的关系模式集合应当与原关系模式“等价”,即经过自然连接可以恢复原关系而不丢失信息,并保持属性间合理的联系。 注意: 一个关系模式接着分解可以得到不同关系模式集合,也就是说分解方法不是唯一 的。最小冗余的要求必须以分解后的数据库能够表达原来数据库所有信息为前提来实 现。其根本目标是节省存储空间,避免数据不一致性,提高对关系的操作效率,同时满 足应用需求。实际上,并不一定要求全部模式都达到3NF不可。有时故意保留部分冗 余可能更方便数据查询。尤其对于那些更新频度不高,查询频度极高的数据库系统更是 如此。在关系数据库中,除了函数依赖之外还有多值依赖,连接依赖的问题,从而提出 了第四范式,第五范式等更高一级的规范化要求。 1.5 Oracle体系结构 - 11 - 微思 Oracle 数据库基础应用 第1章 数据库模型 Oracle是全球最大的关系型数据库和信息管理软件供应商,Oracle公司一直在数据库领域扮演着领头羊的角色。其数据库产品以运行稳定、性能卓越而著称于世,赢得了众多厂商和企业的青睐。 1.5.1 Oracle产品的突出特点 支持大数据库、多用户的高性能的事务处理 遵守数据库存取语言、操作系统、用户接口和网络通讯 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 的工业标准 优秀的安全控制和完整性控制 支持分布式数据库和分布式处理 具有可移植性、可兼容性和可延续性 对象关系型数据库系统等 1.5.2 Oracle server Oracle server发展经历了主机系统--C/S体系结构--N-层体系结构。Oracle server是第一个面向对象的关系型数据库管理系统,从Oracle8i开始通过引入对象类型,实现了面向对象的支持。 在讨论Oracle server之前我们需要区分Oracle server和Oracle database: Oracle server由实例(INSTANCE)和数据库(DATABASE)组成:Oracle实例是一组内存结构和一组后台进程的集合。 Oracle实例: 1.内存结构总称SGA(系统全局区)并且主要包括: 数据高速缓存 重做日志缓冲区 共享池 2.后台进程主要有:SMON、PMON、DBWR、CKPT、LGWR等。 图解如下: ORACLE SERVER 实例 SGA(内存结构组) 0001 黎明 程序员 2000.00 苏州市 0002 枭雄 软件工程师 1500.00 上海市 0003 王丽 项目经理 8000.00 苏州市 0004 里程 总经理 10000.00 北京市 后台进程组 - 12 - 微思 Oracle 数据库基础应用 第1章 数据库模型 数据文件 重做日志文件 控制文件 图1-7:ORACLE SERVER概图 数据文件、 数据库:数据库用于存放数据,以供用户访问,由一组操作系统文件组成(控制文件、重做日志等)。 1.5.3 Oracle数据库物理结构 大家都知道数据库数据的变化(如:INSERT增加数据,UPDATE修改数据)即:数据变化和事务变化,需要永久或暂时的存储到OS文件中,供以后查询分析,这就要求数据库有相应的物理文件来存储数据,就好像工厂生产出的产品,无论以后怎么销售货物,都需要用仓库来存放。那么Oracle数据库中有哪些物理文件来保存数据和事务的变化呢,这里我们主要讲解如下用来存储的物理文件。 数据文件(DATABASE FILE):顾名思义,数据文件就是用于存储数据库数据的文件,在数据文件中存储着用户数据(表、索引等)、数据字典以及回滚段数据等。Oracle数据库至少包含一个数据文件,并且数据文件是表空间的物理组成元素,一个表空间可以包含多个数据文件,表空间我们在以后的章节会讲到;Oracle为数据文件以.dbf结尾。数据文件有两个文件号:绝对文件号和相对文件号,绝对文件号是数据文件在数据库中的唯一标识;相对文件号是数据文件在表空间的唯一标识。数据文件由后台进程DBWR进程写入。 图解如下: 数据库 逻辑组成 SYSTEM表空间 表空间一 表空间二 物理组成(数据文件) 图1-8:ORACLE 物理结构和逻辑结构关系图 - 13 - 微思 Oracle 数据库基础应用 第1章 数据库模型 重做日志文件(REDO LOG):重做日志文件是用于记录数据库变化的物理文件,其目的是为了在出现意外时恢复Oracle数据库,数据库至少要包含两个重做日志文件组,并且这些日志文件组需要循环使用:重做日志由LGWR写入。 重做日志文件组使用规则如下:如果两个日志文件组,当第一个日志文件组写满后,Oracle自动进行日志切换,并且把日志写入第二个日志组;当第二个日志组写满以后会再次切换到第一个Oracle日至文件组,并且把日志写入第一个日志组,依此类推。 下图为三个日志文件组。 日志组一 日志组二 日志组三 图1-9 重做日志组工作原理图 控制文件(CONTROL FILE):控制文件是记录和维护数据库结构的重要文件。Oracle数据库至少包含一个控制文件,一般情况下,实例和数据库是一一对应关系,Oracle数据库正是通过控制文件在实例和数据库之间建立关联关系的,当启动Oracle Server时,系统会根据初始化参数定位控制文件,然后根据控制文件打开所有的数据文件和重做日文件。 控制文件记录如下信息: 数据文件的位置和大小; 重做日志文件的位置和大小; 数据库的创建时间; 日志序列号 参数文件:Oracle数据库实例是由一组内存结构和后台进程组成,而内存结构究竟有多大,后台进程数等都是通过参数进行定义的,安装好的数据库由一组默认的参数组成数据库参数文件,数据库的使用者可以对其进行调整,这些参数总共有200多个,Oracle9i参数文本文件以.ora结尾,Oracle9i以后由文本参数文件创建生成二进制SPFILE参数文件,同时支持动态修改Oracle数据库参数,无须重启系统。 常用基本的参数有: db_name 数据库名 Instance_name 数据库实例名 control_files 控制文件列表 db_block_size 数据库块大小 db_cache_size 数据库数据缓冲区大小 shared_pool_size共享池大小 log_buffer 日志缓冲区大小等 - 14 - 微思 Oracle 数据库基础应用 第1章 数据库模型 1.5.4 Oracle数据库逻辑结构 Oracle数据库的数据在物理上是存放在数据文件中的,而在逻辑上是存放在表空间中的,当在数据库中建立数据库对象时(表、索引、簇等),。Oracle是使用逻辑结构来组织数据的,这些逻辑结构包括表空间、段、区、数据块等。就好像一个工厂的仓库能够人为的逻辑分成不同的区间存放不同产品,比如一个仓库分为四个区,第一个区存放冰箱,第二个区存放彩电,第三个区存放空调器,第四个区作为仓库管理员临时住所,这完全是一种逻辑划分,同时这种逻辑划分还可以细分其功能; 下图为Oracle数据库逻辑结构和物理结构关系图: 数据文件 数据库 表空间 段 区 O/S块 块 图1-10:ORACLE 数据库逻辑结构与物理结构关系图 表空间(TABLESPACE):表空间用于组织数据库数据,数据库逻辑上由一个或多个表空间组成,而表空间物理上是由一个或多个物理文件组成。 Oracle建议把不同类型的数据存放到不同表空间,通过使用不同表空间,可以控制使用磁盘空间量,通过使用不同的表空间可以提高系统的性能。就如从仓库里找相应的产品,找不同产品到不同的区域里去找,这样总比从一堆无序的产品里找需要的产品快得多。 段(SEGMENT)用于存储特定逻辑结构的数据,段由一个或多个区组成,表空间可以包括一个或多个段,但是,一个段只能属于一个表空间,在Oracle中可以包含许多类型的段。主要的段有: 1.数据段:数据段用于存放表数据; 2.索引段:索引段用于存放索引数据; 3.临时段:临时段用于存放排序时的临时数据; 4.回滚段:回滚段则用于存放事务修改数据的旧值,支持事务回滚,事务恢复,读一致 - 15 - 微思 Oracle 数据库基础应用 第1章 数据库模型 性。 区(EXTENT):区由连续的数据块组成,它是Oracle空间分配的逻辑单元。Oracle给块分配空间时是以块为单位进行分配的。 块(DATABASE BLOCK):数据块也被称为Oracle块,它是数文件上执行I/O操作的最小单位,并且尺寸应该是O/S块的整数倍。块就像是仓库存放产品占用地最小的块大小,而这个大小由多个瓷砖单位面积组成。 1.5.5后台进程 数据的写入更新等操作并不是直接由用户写入数据文件,而是用户把数据写入到缓冲区中然后由Oracle后台进程对写入的数据进行写入数据文件,同时,有后台进程进行协调把控制信息、事务信息写入到其他相应的文件;这就好比是进入一个餐馆吃饭,客人只需要提出需求申请(点什么菜,点什么饭),然后由餐馆的服务员进行协调工作,最后餐馆服务员把做好的饭菜提供给客人,其中餐馆的服务人员所做的工作就如Oracle后台数据库进程所做的工作。 主要的后台进程有: DBWR:该进程完成用户提出的数据变动请求,把数据写入数据文件; LGWR:该进程把事务信息写入重做日志文件。 SMON:当数据库突然断电等情况发生时,该进程用于恢复实例,比如有一个修改数据库的事务发生,并且已经发出事务提交,这时突然断电,机器关机,数据库中控制文件信息、重做日志信息、数据文件信息不一致,然后重启动数据库时该进程能把尚未完成的事务提交继续完成,使得数据库一致; 其它后台进程:有PMON进程监控进程,CKPT发出检查点进程等。 后台进程图例如下: SGA 后台进程 SMON PMON DBWR CKPT LGWR 图1-11 后台进程图 1.6小结 ?本章从了解数据库基本概念出发,从宏观上了解数据库的组成和用途。重要是关系型 - 16 - 微思 Oracle 数据库基础应用 第1章 数据库模型 数据库的一些基本概念。 ?根据用户需要创建E-R图模型,掌握E-R模型,了解数据模型在概念设计中的重要地位。以及在逻辑设计中的基础作用。 ?怎样通过范化设计数据库表是本章重要内容之一。深入理解范化的目的,即:数据库设计规范化目的是使结构更合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新数据,对数据库设计非常重要,是设计优秀的数据库的基础。 ?理解Oracle体系结构,Oracle物理设计和逻辑设计,了解良好的物理设计和逻辑设计有助于提高数据库的维护效率,提高数据库的运行效率,如:数据查询等。 1.7英语角 Database 数据库 DBMS 数据库管理系统 TABLESPACE 表空间 SEGMENT 段 EXTENT 区 BLOCK 块 FILE 文件 DATA 数据 LOG 日志 1.8作业 1.阐述Oracle数据库逻辑结构元素的包含关系。 2.设计符合三范式的三个表格:员工表、部门表、工资级别表。 3.现在有一局部应用,包括两个实体,“出版社”和“作者”此两个实体是多对多的联系,请自己设计适当的属性,画出E-R图,再将其转换为关系模式(包括关系名、属性名、码和完整性约束条件) 4.假设数据库系统由四个可用重做日志组,简述数据库对它们的使用方法: 5.当某银行柜员正在给一个大客户办理存款业务,已经下达了“存款”命令,几乎在柜员下达存款业务的“存款”命令的同时,突然数据库因停电“down”机了,这时该笔存款可能出现什么结果,如果有负面结果(存款提交了但没有执行完毕),为了保持数据库的数据正确性,该如何处理(处理方法),为什么要这样处理, 1.9 思考题 1.Oracle 体系结构中物理设计和逻辑涉及的关联性, 2.数据库设计中为什么引入E-R图, 3.理解为什么在应用系统中不能创建完全符号三范式的数据库设计, 1.10 学员回顾内容 - 17 - 微思 Oracle 数据库基础应用 第1章 数据库模型 数据库基本概念: Oracle物理结构和逻辑结构内容: 创建E-R模型步骤: 数据库设计中使用范化的意义 参考资料 多年的应用数据库设计与开发资料,如:银行生产应用系统开发资料; <<数据库原理及应用>> <>等 - 18 - 微思 Oracle 数据库基础应用 第1章 数据库模型 下面是诗情画意的句子欣赏,不需要的朋友可以编辑删除!! 谢谢!!!!! 1. 染火枫林,琼壶歌月,长歌倚楼。岁岁年年,花前月下,一尊芳酒。水落红莲,唯闻玉磬,但此情依旧。 2. 玉竹曾记凤凰游,人不见,水空流。 3. 他微笑着,在岁月的流失中毁掉自己。 4. 还能不动声色饮茶,踏碎这一场,盛世烟花。 5. 红尘嚣 浮华一世转瞬空。 6. 我不是我 你转身一走苏州里的不是我 。 7. 几段唏嘘几世悲欢 可笑我命由我不由天。 8. 经流年 梦回曲水边 看烟花绽出月圆。 9. 人生在世,恍若白驹过膝,忽然而已。然,我长活一世,却能记住你说的每一话。 10. 雾散,梦醒,我终于看见真实,那是千帆过尽的沉寂。 11. 纸张有些破旧,有些模糊。可每一笔勾勒,每一抹痕迹,似乎都记载着跨越千年万载的思念。 12. 生生的两端,我们彼此站成了岸 。 13. 缘聚缘散缘如水,背负万丈尘寰,只为一句,等待下一次相逢。 14. 握住苍老,禁锢了时空,一下子到了地老天荒 15. 人永远看不破的镜花水月,不过我指间烟云 世间千年,如我一瞬。 16. 相逢一醉是前缘,风雨散,飘然何处。 17. 虚幻大千两茫茫,一邂逅,终难忘。相逢主人留一笑,不相识,又何妨。 18. 天下风云出我辈,一入江湖岁月催;皇图霸业谈笑间,不胜人生一场醉。 19. 得即高歌失即休,多愁多恨亦悠悠,今朝有酒今朝醉,明日愁来明日愁。 20. 直道相思了无益,未妨惆怅是清狂。 21. 看那天地日月,恒静无言;青山长河,世代绵延;就像在我心中,你从未离去,也从未改变。 22. 就这样吧,从此山水不相逢。 23. 人天自两空,何相忘,何笑何惊人。 - 19 - 微思 Oracle 数据库基础应用 第1章 数据库模型 24. 既不回头,何必不忘。 既然无缘,何须誓言。 今日种种,似水无痕。 明夕何 夕,君已陌路。 25. 有缘相遇,无缘相聚,天涯海角,但愿相忆。有幸相知,无幸相守,苍海明月,天 长地久。 26. 相见得恨晚,相爱的太慢,进退让我两难。缘过了远分,缘过了聚散,是 否回头就能够上岸 27. 天凉了,凉尽了天荒 地老了,人间的沧桑,爱哭了,这么难舍 心都空了,想放 不能放。天亮了,照亮了泪光 泪干了,枕边地彷徨 28. 心微动奈何情己远.物也非,人也非,事事非,往日不可追 29. 渺渺时空,茫茫人海,与君相遇,莫失莫忘。 30. 如果换我先开口,日子是否还一样细水长流 31. 也许是前世的姻 也许是来生的缘 错在今生相见 徒增一段无果的恩怨 32. 人道海水深,不抵相思半。海水尚有涯,相思渺无畔。 33. 醉眼看别人成双作对, 34. 无人处暗弹相思泪。 35. 终于为那一身江南烟雨覆了天下,容华谢后,不过一场,山河永寂。 36. 千秋功名,一世葬你,玲珑社稷,可笑却无君王命。 37. 凤凰台上凤凰游,负约而去,一夜苦等,从此江南江北,万里哀哭。 38. 嗟叹红颜泪、英雄殁,人世苦多。山河永寂、怎堪欢颜。 39. 风华是一指流砂,苍老是一段年华。 40. 夜雨染成天水碧。有些人不需要姿态,也能成就一场惊鸿。 41. 你要记得,紫檀未灭,我亦未去。 42. 谁在岁月里长长叹息。 43. 汉霄苍茫,牵住繁华哀伤,弯眉间,命中注定,成为过往。 44. 红尘初妆,山河无疆。 最初的面庞,碾碎梦魇无常,命格无双。 45. 江南风骨,天水成碧,天教心愿与身违。 46. 山河拱手,为君一笑 。 47. 如是颠簸生世亦无悔。 48. 荏苒岁月覆盖的过往,白驹过隙,匆匆的铸成一抹哀伤。 49. 那被岁月覆盖的花开,一切白驹过隙成为空白。 50. 褪尽风华,我依然在彼岸守护你。 51. 那些繁华哀伤终成过往, 52. 请不要失望,平凡是为了最美的荡气回肠。 53. 你的路途,从此不见我的苍老。 - 20 - 微思 Oracle 数据库基础应用 第1章 数据库模型 54. 长歌当哭,为那些无法兑现的诺言,为生命中最深的爱恋,终散作云烟。 55. 随你走在天际,看繁花满地。 56. 我自是年少,韶华倾负。 57. 你要记得,那年那月,垂柳紫陌洛城东。 58. 苍茫大地一剑尽挽破,何处繁华笙歌落。 59. 寄君一曲,不问曲终人聚散。 60. 谁将烟焚散,散了纵横的牵绊;听弦断,断那三千痴缠。61. 清风湿润,茶烟轻扬。重温旧梦,故人已去。 1. 水滴虽小,却可以折射出太阳的光彩。 2. 梦落三千尺愁深似海,繁华遗落散满地。记忆轮回里,我举杯,在奈何桥上满口饮尽。 3. 人生没有轮回,就像花,人活一世,花开一季、人生如花,花似梦。 4. 生活的苦涩和美好给了我对人生的领悟,如今,千山万水走遍,我发现自己再也不愿离开文学的蓝天,再也不愿离开那个让我痴迷的文学舞台。 5. 在烟雨红尘中,轻拾季节花瓣飘落的音符,组成美妙曲符,然后,倚在时光的路口,撷一缕明媚,许自己一份唯美的怀想,与快乐、浪漫相约,闲淡清欢。 6. 未经历坎坷泥泞的艰难,哪能知道阳光大道的可贵;未经历风雪交加的黑夜,哪能体会风和日丽的可爱;未经历挫折和磨难的考验,怎能体会到胜利和成功的喜悦。挫折,想说恨你不容易 7. 燕子斜飞人家,炊烟零乱,柳絮飘飘,弥漫了山里人家。 8. 这样知解自己的生命即使是心灵空荡我也无所畏惧 9. 中秋之曰不可能岁月明如水,偶然的暗淡,恰似镜子的背后之面,有所缺憾,人生才会是积翠如云的空濛山色。 10. 在经受了失败和挫折后,我学会了坚韧;在遭受到误解和委屈时,我学会了宽容;在经历了失落和离别后,我懂得了珍惜。 11. 曾经盛开的蔷薇,虽经风吹雨打,但和着微风,还有屡屡暗香飘过。 12. 我只希望,不管三年,五年,或是十年以后。某一天,我们相遇,还能相认,你大喊一声,我想死你了。那一刻,我定会泪流满面。我们是朋友,永远的朋友。 13. 最爱的未必适合在一起,相爱是让彼此做自己。 14. 时间断想,时间不断。流逝,像是水,可弯可直,像是风,可柔可刚。 - 21 - 微思 Oracle 数据库基础应用 第1章 数据库模型 15. 如果说人生是一望无际的大海,那么挫折则是一个骤然翻起的浪花。如果说人生是湛蓝的天空,那么失意则是一朵飘浮的淡淡的白云。 16. 云层雾气,缠着几户古木人家,清新自然,如诗如画。 17. 我喜欢你,只是一个现在;我爱你,却是一整个未来。 18. 夜雨染成天水碧。有些人不需要姿态,也能成就一场惊鸿。 19. 再大的风不会永不停息,在浓得雾不会经久不散,风息雾散仍是阳光灿烂。 20. 牵着时光的衣襟,走进芳菲五月,轻轻地将春光拥入怀中,于一抹素白流韵中,弹奏一曲江南的婉韵,把盏,将似水流年浅斟轻酌。 21. 我穿越轮回而来,在奈何桥相思盈袖,凄然守候。莫落泪,纵若水落三千尺东流,云动八万里西散,我依旧会化身城碟,翩翩起舞跨过奈何桥与你相会。 22. 如果我爱你,我就会理解你,通过你的眼睛去看世界。我能理解你,是因为我能在你身上看到我自己,在我身上也看到了你。 23. 似乎风在转向,送走了缓缓袭来的味道,又将刚刚溜走的风,静静地换回来。 24. 生活告诉我,童话只不过是小孩子幻想的游戏。 25. 人生就像穿着一件长满虱子的华丽睡袍,外表美丽,而内心却充满了干啊和恐慌。 26. 必须用另一种真实方式来代替时光里已经逝去的东西 27. 岁月,依一抹浅香于心间,看年华向晚,闻花香送暖。给时光一个浅浅的回眸;给自己一份微笑从容。沉淀,馨香;念起,温暖。 28. 人生的起起落落间,总会有一些情怀需要安静回味;总会有一些伤痛需要独自体会;总会有一段路需要一个人走;总会有一些事需要坦然面对。 29. 疏影横斜水清浅,暗香浮动月黄昏。 30. 心若没有栖息的地方,到哪里都是在流浪。 31. 今后,我会从尘世中的纷争走出,远离喧嚣,把岁月打磨成诗,让自己的文字静如睡莲,动如涟漪,无论何时都能描绘成美丽的水墨丹青。 32. 全是理智的心,恰如一柄全是锋刃的刀,它叫使用它的人手上流血。——泰戈尔 33. 我们都不擅长表达,以至于我们习惯了揣测。去肯定,去否定,反反复复,后来我们就变得敏感而脆弱。 34. 心心念念的往事、曾经深爱过的人、年少琐碎的过往,它们就像缠绕之间的一阵风,来的缱绻,去的时候让人来不及挽留。 35. 如果在乎的没有那么多,想要的没有那么多,生活便会简单得很多。 - 22 - 微思 Oracle 数据库基础应用 第1章 数据库模型 36. 在极度的喧嚣中,独自微笑独自平静是憾,落花是美的,淡淡的书香,淡淡的花香,淡淡的馨香。 37. 曾芬芳过的那片土地,幸福的花儿虽早已凋谢,只留下风雨吹打的痕迹。 38. 辗转半世红尘,缘去缘灭,空留满池伤痕。雨花迟落,霜雪纷飞,池水泛冰,已益处月的苍凉。 39. 一条古道,一匹瘦马,一个人影,被落日的余晖缓缓拉长。 40. 我们人生的大幕才刚刚拉启:刀光剑影,英雄本色;是非恩怨,儿女情常。 41. 我们要去流浪,虔诚地定格住每一寸记忆;我们要去成长,潇洒地忘却掉每一条纹路。 42. 嗅着昨日芬芳遗留的气息,寻寻觅觅,仍不见踪迹。邂逅了一场烟火,终还是那般凄凉。迷失的夜晚,点缀了无数颗孤单的星星,不知道那是否有属于我的一颗。 43. 像这样轻飘飘的日子和平平静静的心情,也算是生活中的一种享受吧。 44. 想着远方的你,绝美的笑容,只为你一个人展露,那一泓羞涩的笑容,悄悄。 45. 细碎的声音,如羞涩的蓓蕾,夜暮花影,轻浅六月,寂寂流年,拢一阙清绝,归隐在宋词里。 46. 夕阳沉落在海水深处却不见浪花翻滚,淡淡的只留下一个让人沉思的背影。落雨是晚风中的殇,带着晨曦的翘首滑落最后的伤痕!雨尽含羞,淡抹嫣红! 47. 无影击碎了泪水,岁月在那个光年划下的痕迹原来是一刀一刀地刻在了我的心上。 48. 我收拢了梦想的翅膀,我停却了信念的脚步,却再也作不回曾经的那一天。 49. 我宁愿用尽此生,为那些尘世的硝烟尘雾,潸然泪下,为菩提落花,为世间繁华。 50. 阳光依旧在,我们穿越光影,沿着历史的足迹继续前行,创造美好生活,走向美丽明天! 51. 洋溢着春日的微笑,坚强了外表,却虚伪了内心,脆弱了,是不敢触及的。 52. 也许,就在那一刻里,梦境还在,柔情亦在。 53. 一个人的戏,自己独自导演,诠释精彩。在剧中尽情释放着自己的喜怒哀乐。笑得凄然绝美;哭得肝肠寸断。 54. 但生命中被你刻上痕迹的那些岁月无法抹去。 55. 往事悠然一笑间,不必空忧。我们一路走来,只是为了告别往事,走入下一段风景。倘若让忧伤填补了生命的空白,就真的是亵渎了生命。 - 23 - 微思 Oracle 数据库基础应用 第1章 数据库模型 56. 人生只有回不去的过去,没有过不去的当下。上帝只会给你过得去的坎,再不好过的生活,再难过的坎,咬咬牙,也就过去了。 57. 我一直以为山是水的故事,云是风的故事,你是我的故事。可是却不知道,我是不是你的故事。 58. 生命并不是一场竞赛,而是一段旅程。如果你在途中一直都试图给他人留下深刻印象,超过别人,那你就浪费了这段旅程。 59. 比如新的朋友新的感情新的思绪我想要知道的 60. 我以为我已经将爱情忘记,将你忘记。可是有一天,我听到一首歌,我的眼泪就出来了。因为这首歌,我们曾一起听过。 61. 忍花开花落,云卷云舒,品人生似棋。 62. 我离开你这一种信仰又会以怎样全新的姿势去面临更深沉的挑战 63. 人生路,路迢迢,谁道自古英雄多寂寥,若一朝,看透了,一身清风挣多少。 64. 只有夕阳站在那里。灵魂像无数的雪花飘过,光明闪烁,渐渐清醒。 65. 终于为那一身江南烟雨覆了天下,容华谢后,不过一场,山河永寂。 66. 荏苒岁月覆盖的过往,白驹过隙,匆匆的铸成一抹哀伤。 67. 忘川水不枯,记忆不散;奈何桥不断,思卿不弃;今夕,彼岸花又放,佳期约又到,我轮回践约而来,等你归来。红尘路上,伊人在否? 68. 十年生死两茫茫,不思量,自难忘,千里孤坟,无处话凄凉,纵使相逢应不识,尘满面,鬓如霜。 69. 天空飘过一朵云,有时是晴,有时是阴。但白昼终归还是白昼。 70. 我知道回不去,但还是会想念会回忆会心疼到无法自拔。 71. 天空不曾留下鸟的痕迹,但是我已飞过、在大地上画满窗子,让所有习惯黑暗的眼睛都习惯光明。 72. 人生首先要是望远镜,看远;再就是显微镜,看细;接下来是放大镜,看透;其次是太阳镜,看淡;最后是哈哈镜,笑看生活。 73. 我不是公主,也不会有等待救赎我的王子。 - 24 -
本文档为【oracle基础教程 第1章 数据库模型】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_751406
暂无简介~
格式:doc
大小:78KB
软件:Word
页数:0
分类:企业经营
上传时间:2017-10-20
浏览量:9