第1章数据库模型
    学习目标
    了解…数据库相关概念,以及关系型数据库概念
    理解…数据库的定义,关系型数据库模型,ORACLE数据库管理系统体系结构
    掌握…关系型数据库E-R建模,ORACLE数据库体系结构的组成及相关概念
   
    课前准备
    数据库基本理论
    数据库设计E-R模型
    数据库设计范化
    Oracle数据库体系结构
   
   
    1.1本章简介
   
    本章主要介绍数据库的基本知识,主要包括如下内容:与数据库相关的定义;关系型数据库E-R建模;同时着重介绍了oracle数据库管理系统体系结构的主要方面:物理结构、逻辑结构、后台进程及相关工作原理,本章内容是本书的基本章节,深入理解本章内容有助于以后章节的学习与实践。
   
    1.2数据库基本知识
   
    当今人类社会已经进入了信息化时代,信息资源已经成为了人们生活中必不可少的重要而宝贵的资源。作为信息系统核心技术和重要基础的数据库技术有了飞速发展,并得到了广泛的应用。
    由于大量的信息以数据的形式存于计算机系统中,为了方便人们查询、检索、处理加工,传播需要的信息,这就提出了需要对数据进行分类,组织、编码、存储检索和维护的数据库管理工作。而数据库管理技术本身也经历了长足的发展,先后经历了人工管理,文件系统和数据库系统三个阶段。
    在人工管理阶段数据处理都是通过手工进行的,这种数据处理数据量少,数据不保存,没有软件系统对数据进行管理,这种管理方式对程序的依赖性太强,并且大量数据重复冗余。为了解决手工进行数据管理的缺陷,随着技术发展提出了文件管理的方式,解决了应用程序对数据的强依赖性问题,给程序和数据定义了数据存取公共接口,数据可以长期保存,数据不属于某个特定的程序,使数据组织多样化了(如:索引、链接文件等技术),但仍然存在大量数据冗余,数据不一致性,数据联系弱的特点(文件之间是孤立的,整体上不能反映客观世界事物内在联系),为了解决文件数据管理的缺点,人们提出了全新的数据管理的方法:
数据库系统,该方法充分地使用数据共享,交叉访问,与应用程序高度独立,而数据库系统根据其建立的模型基础的不同而不同,其中最为广泛使用的是建立在关系模型基础之上的关系型数据库,如:Oracle数据库系统,SQL  SERVER数据库管理系统等。这类数据库系统满足关系模型的三大要素:关系数据结构,关系操作集合,关系完整约束。以下我们将介绍这关系型数据库的特点。
   
  1.2.1  数据库的特点
    数据(DATA):数据是描述现实世界事物的符号标记,是指用物理符号记录下来的可以鉴别的信息。包括:数字、文字、图形、声音、及其他特殊的符号。
    数据库(DATABASE):按照一定的数据模型组织存储在一起的,能为多个应用程序共享的,与应用程序相对独立的相互关联的数据集合。
    数据库管理系统(DBMS-Database  Management  System):是指帮助用户使用和管理数据库的软件系统。
  数据库管理系统通常由以下三个部分组成:
   
    用来描述数据库的结构,用户建立数据库的数据描述语言DDL
    供用户对数据库进行数据的查询和存储等数据操作语言DML
    其它的管理与控制程序(例如:TCL事务控制语言,DCL数据控制语言等)
   
    数据库具有以下特点:
    数据的结构化
    数据共享
    减少数据冗余
    优良的永久存储功能
   
    1.2.2  关系型数据库
   
    关系型数库:是以关系数学模型来表示的数据。关系数学模型以二维表的形式来描述数据。一个完整的关系型数据库系统包含5层结构(由内往外) 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
                                  图:1-1关系数据库系统5层结构
   
    硬件
   
    硬件是指安装数据库系统的计算机,包括两种。
    服务器、客户机
   
  操作系统
   
    操作系统是指安装数据库系统的计算机采用的操作系统。
   
    数据库、关系型数据库管理系统
   
    关系型数据库是存储在计算机上的,可共享的、有组织的关系型数据的集合。
   
    关系型数据库管理系统是位于操作系统和关系型数据库应用系统之间的数据库管理软件,它通常由以下三个部分组成:用来描述数据库的结构,用来建立用户数据库的数据描述语言DDL;供用户对数据库进行数据的查询和存储等操作的数据库操作语言DML;其它的管理和控制程序。
   
  关系型数据库应用系统
   
    关系型数据库应用系统指为满足用户需求,采用各种应用开发工具和开发技术开发的数据库应用软件
   
    用户
   
    用户是指和数据库打交道的人员,包括如下三类人员:
   
    最终用户:应用程序的使用者,通过应用程序与数据库进行交互;
   
    数据库应用系统开发人员:是指在开发周期内,完成数据库结构的设计,应用程序开发等任务;
   
    数据库管理员:就是我们通常所说的数据库DBA,其职能就是对数据库做日常管理,如:数据备份,数据库监控,性能调整,安全监控与调整等任务。
   
    1.3  数据库设计E-R模型
   
    人们在现实生活中把需要实现的事物的数据特征按某种方式进行抽象,以便能够准确的,方便的表示信息世界,这种“抽象方式”就是使用合适的模型来描述信息世界。其中最常用的就是E-R模型:即实体-联系法。这种方法接近人的思维,与计算机无关、冗余被用户接受,所以人们在设计数据库,把现实世界抽象为概念结构的时候总是常用E-R模型来描述之。接下来我们将介绍概念设计中的E-R模型表示法。
   
    1.3.1 概念结构(概念模型)
   
    概念结构是对现实世界中的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述。概念结构的要点和图解如下:
    概念结构独立于数据库逻辑结构,也独立于支持数据库的DBMS,不受其约束。
    它是现实世界与机器世界的中介,它一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又易于向关系、网状、层次等各种数据模型转换。
    它应是现实世界的一个真实模型,易于理解,便于和不熟悉计算机的用户交换意见,使用户易于参与。
    当现实世界需求改变时,概念结构又可以很容易地做相应调整。因此概念结构设计是整个数据库设计的关键所在。
   
   
   
   
        关系,网状,层次
        概念结构    数据模型生活中数据库系统的实际例子
   
   
   
                                                                      机器世界
   
   
    现实世界                        信息世界
   
   
   
   
                                图1-2  概念设计模型
       
    1.3.2 概念结构的设计方法
   
    设计概念结构通常有四类方法:
   
    自顶向下:即首先定义全局概念结构的框架,然后逐步细化。
    自底向上:即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构。
    逐步扩张:首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构。
    混合策略:即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。
    其中最经常采用的策略是自顶向下地进行需求分析,然后再自底向上地设计概念结构。整个过程是:数据抽象与局部视图(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)