`
相思的泪
  • 浏览: 50063 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Oracle结构设计详解

阅读更多
ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
概念结构设计
    概念结构设计是在需求分析的基础上形成数据库的概念模型,这是语义层的描述,与具体的DBMS无关。通常可以使用E-R图来表示概念模型。
    在概念结构设计中,主要会用到以下几种方法。
    Oracle结构设计详解
    自底向上:先定义每个局部应用的概念结构,然后按一定的规则把它们集成起来,从而得到全局概念模型。
    自顶向下:先定义全局的概念结构框架,然后再逐步细化。
    由里向外:先定义最重要的核心结构,然后再逐步向外扩展。
    混合策略:将自顶向下和自底向上方法结合起来,先用自顶向下方法设计一个概念结构框架,然后以此为框架再根据自底向上策略设计局部概念结构,最后把它们集成起来。
    采用E-R图进行数据库概念结构设计可分以下3步:
    1)设计局部E-R模型,确定各个局部E-R模型的范围、定义实体、关系以及它们的属性。
    2)集成局部E-R图,形成全局E-R模型。在此过程中,需要消除各个局部E-R中的属性冲突、命名冲突、结构冲突等问题。
    3)对全局E-R模型做进一步的优化,其原则是实体个数尽可能少、实体所包含的属性尽可能少、实体间关系无冗余。可以把具有相同主码的实体进行合并,将具有1对1关系的两个实体合并成一个实体,消除冗余属性和冗余联系。
    逻辑结构设计
    逻辑结构设计的任务就是将概念结构设计阶段产生的E-R图转换为具体的数据库管理系统所支持的数据模型。对于关系数据库而言,逻辑结构设计就是将E-R图转换成关系模式,并对关系模式进行优化。
    1.将E-R图转换成关系模式
    将E-R图转换为关系模式的基本原则为:
    一个实体转换为一个二维表。实体的名字作为表的名字,实体的属性作为表的属性,实体的主码作为表的主码。
    一对一联系可以转换为一个独立的表,也可以与任意一端的实体所对应的表合并。如果单独作为一张表,则关系的名称作为表的名称,与关系相关联的两个实体的主码及联系本身的属性都作为这张表的属性,任选一个与之相关联的实体的主码作为主码。如果与实体所对应的表合并,则需要在该表中添加另一张表的主码和联系本身的属性作为该表的属性。
    一对多联系可以转换为一个单独的表,也可以合并到多端实体所对应的表中。如果单独作为一张表,则关系的名称作为表的名称,与关系相关联的两个实体的主码及关系本身的属性都作为这张表的属性,多端实体的主码作为主码。如果与多端实体所对应的表合并,则需要在该表中添加一端所对应表的主码和关系本身的属性作为该表的属性。
    多对多联系必须转换为一张表,关系的名称作为表的名称,相关联的两个实体的主码及联系本身的属性都作为该表的属性,两个实体的主码联合起来作为该表的主码。
    三个或三个以上实体间的多元关系可以转换为一张表,各个实体的主码及关系本身的属性作为该表的属性,各个实体的主码联合起来作为该表的主码。
    2.关系模式优化
    数据库逻辑结构设计的结果并不是唯一的。为了进一步提高数据库应用系统的性能,通常以规范化理论为指导,适当地修改、调整数据模型的结构,即关系模式优化。
    关系模式优化的步骤如下:
    1)确定数据依赖。分析出每个关系模式的各属性之间的依赖关系及不同关系模式各属性之间的数据依赖关系。
    2)对各个关系模式之间的数据依赖进行极小化处理,消除冗余的关系。
    3)按照数据依赖的理论对关系模式逐一进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式。根据应用需求,分析模式是否合适,是否需要进行合并或分解。
    物理结构设计
    物理结构设计的目的是利用已经确定的逻辑结构的结果及DBMS提供的方法、技术,以适当的存储结构、存取路径、合理的存储位置及存储分配,设计出一个高效的、可实现的数据库结构。
    数据库的物理结构设计通常分为以下两个方面。
    确定数据库的物理结构,在关系数据库中主要指确定存储结构和存取方法。确定数据库存储结构时要综合考虑存取时间、存储空间利用率和维护代价3方面的因素。常用的存储方式有顺序存储、散列存储和聚簇存储。为了提高数据的存取效率,应该建立合适的索引。
    对物理结构进行评价,评价的重点是时间和空间效率。评价物理数据库的方法完全依赖于所选用的DBMS,主要从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果进行权衡、比较,选择出一个较优的、合理的物理结构。
    关于数据库的物理结构设计,需要明确一点,即使不进行物理结构设计,数据库系统照样能够正常运行,物理结构设计主要是为了进一步提高数据的存取效率。如果项目的规模不大,数据量不多,那么可以不进行物理结构设计。

原文件下载网址http://www.xiazai.com/article31537
0
0
分享到:
评论

相关推荐

    Oracle_PLSQL_编程语法详解

    第一章 PL/SQL程序设计简介 第二章 PL/SQL块结构和组成元素 第三章 PL/SQL流程控制语句 第四章 游标的使用 第五章 异常错误处理 第六章 存储过程和函数 第七章 包的创建和应用 第八章 触发器 第九章 ORACLE...

    Oracle包应用详解.doc

    (1)包是一种数据库对象,将逻辑上相关的PL/SQL类型、对象和子程序组合成一个更大的单位,是一组相关过程、函数、变量、常量和游标等PL/SQL程序设计元素的组合,它具有面向对象程序设计语言的特点,是对这些PL/SQL ...

    Oracle PL-SQL编程详解.pdf

    本⽂⽬录: 1. PL/SQL 程序设计简介 2. PL/SQL块结构和组成元素 3. PL/SQL流程控制语句 4. 把游标说透 5. 异常错误处理 6. 把过程与函数说透 7. 程序包的创建与应⽤ 8. 把触发器说透

    Oracle编程详解

    01. PLSQL 程序设计简介;02. PLSQL 块结构和组成元素;03. PLSQL 流程控制语句;04. PLSQL 把游标说透;05. PLSQL 异常错误处理;06. PLSQL 把过程与函数说透;07. PLSQL 程序包的创建与应用;08. PLSQL 把触发器说...

    Oracle 10g 学习笔记

    │ ORACLE的索引和约束详解 - Oracle10g - 沪城篱笆.mht │ oracle里常用命令 - Oracle - 51CTO技术论坛_中国领先的IT技术社区.mht │ Sequence相关操作命令 - lvhuiqing的专栏 - CSDN博客.mht │ Sequence相关操作...

    oracle数据库体系架构详解

    在学习oracle中,体系结构是重中之重,一开始从宏观上掌握它的物理组成、文件组成和各种文件组成。掌握的越深入越好。在实际工作遇到疑难问题,其实都可以归结到体系结构中来解释。体系结构是对一个系统的框架描述。...

    ORACLE范式的学习

    数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员...

    pl/sql 开发详解

    从Oracle6开始,Oracle公司在标准SQL的基础上发展了自己的PL/SQL语言,将变量、控制结构、过程和函数等结构化程序设计的要素引入了SQL语言中,这样就能够编制比较复杂的SQL程序了,利用PL/SQL语言编写的程序也称为...

    Java开发详解.zip

    031503_【第15章:Java反射机制】_反射应用——取得类的结构笔记.pdf 031504_【第15章:Java反射机制】_Java反射机制的深入研究笔记.pdf 031505_【第15章:Java反射机制】_动态代理笔记.pdf 031506_【第15章:Java...

    C程序设计语言(第2版·新版中文)

    热门Tag JAVA C++ linux C# 教程 C语言 android 源码 PDF 编程 sql c Windows matlab ORACLE 源代码 api 中文 数据库 arm JavaScript 破解 数据结构 vc visual jQuery 计算机 答案 单片机 php JSP mfc .NET 中文版 ...

    IMagineWorld平台的安装及调试详解

    IMagineWorld网络视频综合管理平台采用B/S和C/S结构,兼括管理服务器、数据库服务器、RVS服务器(LCRVS-64,LCRVS-400)、APS报警处理服务器、虚拟矩阵,兼容MySQL和Oracle数据库,同时支持NAS存储,具备双机备份,支持...

    JAVA高并发高性能高可用高扩展架构视频教程

    打造高效代码结构(java性能优化) 新版本通俗易懂_观察者模式递进时讲解 ibatis连接数据库 高并发之单(多)生产者消费者线程 高并发复用数据库链接技术详解之数据库连接池 类加载器的高级特性(自定义类加器实现加密...

    Eclipse开发入门与项目实践 源代码

    1.1.2 Eclipse的结构和平台内核 2 1.2 Eclipse开发环境的搭建 3 1.2.1 JDK的安装 4 1.2.2 JDK环境变量的设置 5 1.2.3 Eclipse的安装 6 1.2.4 Eclipse多国语言包的安装 8 1.2.5 Eclipse中文本编辑器编码...

    高级java工程师笔试题-All-Language-Interview-Question-:所有编程语言面试问答详解

    所有编程语言面试问答详解 作者 拉玛尼·希特什 iOS 开发者 Gmail:- 精彩访谈 请阅读 或 如果您想贡献。 目录 编程语言/框架/平台 安卓 AngularJS 角 主干JS C++ C C# 。网 Clojure CSS Cucumber 姜戈 码头工人 ...

    asp.net知识库

    Oracle中PL/SQL单行函数和组函数详解 mssql+oracle Oracle编程的编码规范及命名规则 Oracle数据库字典介绍 0RACLE的字段类型 事务 CMT DEMO(容器管理事务演示) 事务隔离性的一些基础知识 在组件之间实现事务和异步...

    数据库的基础知识及增删改查—详解—适合初学者学习

    数据库的增删改查数据库数据库的分类常见的关系型数据库SQL分类MySql数据库的安装和使用数据库的表的设计数据库服务器的连接数据库表的设计插入—-insert修改表记录–update删除表中的记录—-delete查询—-select...

    大数据量高并发的数据库优化详解

    一、数据库结构的设计 在一个系统分析、设计阶段,因为数据量较小,负荷较低。我们往往只注意到功能的实现,而很难注意到性能的薄弱之处,等到系统投入实际运行一段时间后,才发现系统的性能在降低,这时再来考虑...

    php网络开发完全手册

    13.3.2 ORACLE 207 13.3.3 SYBASE 207 13.3.4 DB2 207 13.3.5 SQL Server 207 13.4 SQL语言简介 207 13.5 常见的数据库设计问题 208 13.6 关系型数据库的设计原则 209 13.6.1 第一范式(1NF) 209 13.6.2 第二范式...

Global site tag (gtag.js) - Google Analytics