第1章数据库基础知识1.1数据库系统概述1.1.1基本概念1、数据(Data)数据就是描述事物的符号记录,它是数据库中存储的基本对象。描述事物的符号可以是数字,也可以是文字、图形、图像、音频、视频等广义的数据,这些数据都可以经过数字化后存入计算机中。2、数据库(DataBase,DB)数据库即存放数据的仓库。数据库就是长期存储在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的穴余度、较高的数据独立性和易扩展性,并可以为各种用户共享。3、数据库管理系统(DataBaseManagementSystem,DBMS)数据库管理系统是位于用户与操作系统之间的一层管理软件,是数据库与用户之间的接口,是数据库系统的一个重要组成部分。DBMS通常应具备以下主要功能:数据的定义功能;数据组织、存储和管理;数据操纵功能;数据库的建立和维护功能;其他功能。4、数据库系统(DataBaseSystemDBS)数据库系统是指由数据库、数据库管理系统(及其开发工具)、应用系统和数据库管理员(DBA)共同组成的整个系统。一般在不至于引起混淆的情况下,通常将数据库系统简称为数据库。1.1.2数据管理技术的发展数据管理是指对数据进行分类、组织、编码、存储、检索和维护,而数据的处理是指对各种数据进行收集、存储加工和传播的一系列活动的总和。数据管理经历了以下三个阶段:1、人工管理阶段20世纪50年代中期:计算机主要用于科学计算。当时没有磁盘等直接存取设备:只有纸带、卡片、磁带等外存,也没有操作系统和管理数据的专门软件。数据处理的方式是批处理。该阶段管理数据的特点是:(1)数据不保存。(2)应用程序管理数据。(3)数据不共享。(4)数据不具有独立性。2、文件系统阶段20世纪50年代后期到60年代中期,随着计算机硬件和软件的发展,磁盘、磁鼓等直接存取设备开始普及,操作系统中已经有了专门用于数据管理的软件,通常称为文件系统处理上不仅有批处理,还能够联机实时处理。该阶段管理数据的特点是:(1)数据可以长期保存(2)由文件系统管理数据(3)数据共享性差,穴余度大(4)数据独立性差3、数据库系统阶段
第 1 章 数据库基础知识 1.1 数据库系统概述 1.1.1 基本概念 1、数据(Data) 数据就是描述事物的符号记录,它是数据库中存储的基本对象。描述事物的符号可以是 数字,也可以是文字、图形、图像、音频、视频等广义的数据,这些数据都可以经过数字化 后存入计算机中。 2、数据库(DataBase, DB) 数据库即存放数据的仓库。 数据库就是长期存储在计算机内、有组织、可共享的大量数据的集合。数据库中的数据 按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性, 并可以为各种用户共享。 3、数据库管理系统(DataBase Management System, DBMS) 数据库管理系统是位于用户与操作系统之间的一层管理软件,是数据库与用户之间的接 口,是数据库系统的一个重要组成部分。DBMS 通常应具备以下主要功能:数据的定义功 能;数据组织、存储和管理;数据操纵功能;数据库的建立和维护功能;其他功能。 4、数据库系统(DataBase System, DBS) 数据库系统是指由数据库、数据库管理系统(及其开发工具)、应用系统和数据库管理 员(DBA)共同组成的整个系统。 一般在不至于引起混淆的情况下,通常将数据库系统简称为数据库。 1.1.2 数据管理技术的发展 数据管理是指对数据进行分类、组织、编码、存储、检索和维护,而数据的处理是指对 各种数据进行收集、存储加工和传播的一系列活动的总和。 数据管理经历了以下三个阶段: 1、人工管理阶段 20 世纪 50 年代中期,计算机主要用于科学计算。当时没有磁盘等直接存取设备,只有 纸带、卡片、磁带等外存,也没有操作系统和管理数据的专门软件。数据处理的方式是批处 理。该阶段管理数据的特点是: (1)数据不保存。 (2)应用程序管理数据。 (3)数据不共享。 (4)数据不具有独立性。 2、文件系统阶段 20 世纪 50 年代后期到 60 年代中期,随着计算机硬件和软件的发展,磁盘、磁鼓等直 接存取设备开始普及,操作系统中已经有了专门用于数据管理的软件,通常称为文件系统。 处理上不仅有批处理,还能够联机实时处理。该阶段管理数据的特点是: (1)数据可以长期保存 (2)由文件系统管理数据 (3)数据共享性差,冗余度大 (4)数据独立性差 3、数据库系统阶段
20世纪60年代后期以来,计算机管理的对象规模越来越大,应用越来越广泛,数据量激增,各种复杂的应用要求越来越强烈。此时大容量硬盘的价格普遍下降,软件的价格则上升,开发和维护软件的成本增加。在处理方式上,更多的要求联机实时处理,并开始提出和考虑分布处理。在这样的背景下,统一管理数据的专门软件系统一一数据库管理系统应运而生,数据管理登上了一个新的高度。1.1.3数据库系统的特点与分类1、数据库系统的特点(1)数据结构化。这是数据库最主要的特征之一,是指在数据库中的数据不再仅针对某个应用,而是面向全组织;不仅数据内部是结构化的,而且整体式结构化的,数据之间是有联系的。因此在应用时,不仅要考虑到某个应用的数据结构,还要考虑整个组织的数据结构。(2)数据的共享性高,余度低,易扩充。从整体角度看待和描述数据,数据库系统中的数据不再面向某个应用而是面向整个系统,因此数据可以被多个用户、多个应用共享使用。数据共享可以大大减少数据集允余,节约存储空间,还能够避免数据之间的不相容性与现象。由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充,可以适应各种用户的要求。(3)数据独立性高。数据独立性包括数据的物理独立性和数据的逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的。(4)数据由DBMS统一管理和控制。2、数据库系统的分类数据库系统分为以下四种:(1)面向对象数据库当面向对象技术兴起后,人们就探索用对象模型来组织多媒体数据库,推动并促进了对象式数据库的产生。在面向对象数据库中,数据量庞大,且长短不一;检索方式以基于内容的“非精确匹配和相似查询”为主,而非传统数据库中的以“精确查询”为主。(2)分布式数据库分布式数据库把数据分散地存放在网络上的多个结点上,彼此用通信线路连接。目前在Internet/Intranet上流行的Web数据库,就是分布式数据库的应用实例。(3)演绎数据库演绎数据库是指具有演绎推理能力的数据库。演绎数据库除了存储事实外,还能存储用于逻辑推理的规则。与传统数据库存储的数据都代表已知事实(fact)相比,演绎演绎数据库由“事实+规则”构成,因此也称这类数据库为基于规则(rule-based)的数据库或逻辑数据库。它采用的数据模型称为逻辑模型或基于逻辑的数据模型。(4)关系数据库1970年美国IBM公司SanJose研究室的研究院E.F.Codd首次提出了数据库系统的关系模型,开创了数据库关系方法和关系数据理论的研究,为数据库技术奠定了理论基础。关系模型是目前最重要的一种数据模型,关系数据库系统采用关系模型作为数据的组织方式。1.1.4数据模型1、数据模型数据模型(DataModel)是对现实世界数据特征的抽象。由于计算机不可能直接处理现实世界中的具体事物,所以人们必须事先把具体事物转换成计算机能够处理的数据。也就是
20 世纪 60 年代后期以来,计算机管理的对象规模越来越大,应用越来越广泛,数据量 激增,各种复杂的应用要求越来越强烈。 此时大容量硬盘的价格普遍下降,软件的价格则上升,开发和维护软件的成本增加。在 处理方式上,更多的要求联机实时处理,并开始提出和考虑分布处理。在这样的背景下,统 一管理数据的专门软件系统——数据库管理系统应运而生,数据管理登上了一个新的高度。 1.1.3 数据库系统的特点与分类 1、数据库系统的特点 (1)数据结构化。这是数据库最主要的特征之一,是指在数据库中的数据不再仅针对 某个应用,而是面向全组织;不仅数据内部是结构化的,而且整体式结构化的,数据之间是 有联系的。因此在应用时,不仅要考虑到某个应用的数据结构,还要考虑整个组织的数据结 构。 (2)数据的共享性高,冗余度低,易扩充。从整体角度看待和描述数据,数据库系统 中的数据不再面向某个应用而是面向整个系统,因此数据可以被多个用户、多个应用共享使 用。数据共享可以大大减少数据集冗余,节约存储空间,还能够避免数据之间的不相容性与 现象。由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易 增加新的应用,这就使得数据库系统弹性大,易于扩充,可以适应各种用户的要求。 (3)数据独立性高。数据独立性包括数据的物理独立性和数据的逻辑独立性。物理独 立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。逻辑独立性是指用 户的应用程序与数据库的逻辑结构是相互独立的。 (4)数据由 DBMS 统一管理和控制。 2、数据库系统的分类 数据库系统分为以下四种: (1)面向对象数据库 当面向对象技术兴起后,人们就探索用对象模型来组织多媒体数据库,推动并促进了对 象式数据库的产生。在面向对象数据库中,数据量庞大,且长短不一;检索方式以基于内容 的“非精确匹配和相似查询”为主,而非传统数据库中的以“精确查询”为主。 (2)分布式数据库 分布式数据库把数据分散地存放在网络上的多个结点上,彼此用通信线路连接。目前在 Internet/Intranet 上流行的 Web 数据库,就是分布式数据库的应用实例。 (3)演绎数据库 演绎数据库是指具有演绎推理能力的数据库。演绎数据库除了存储事实外,还能存储用 于逻辑推理的规则。与传统数据库存储的数据都代表已知事实(fact)相比,演绎演绎数据 库由“事实+规则”构成,因此也称这类数据库为基于规则(rule-based)的数据库或逻辑数 据库。它采用的数据模型称为逻辑模型或基于逻辑的数据模型。 (4)关系数据库 1970 年美国 IBM 公司 San Jose 研究室的研究院 E.F.Codd 首次提出了数据库系统的关系 模型,开创了数据库关系方法和关系数据理论的研究,为数据库技术奠定了理论基础。关系 模型是目前最重要的一种数据模型,关系数据库系统采用关系模型作为数据的组织方式。 1.1.4 数据模型 1、数据模型 数据模型(Data Model)是对现实世界数据特征的抽象。由于计算机不可能直接处理现 实世界中的具体事物,所以人们必须事先把具体事物转换成计算机能够处理的数据。也就是
说首先要数字化,把现实世界种具体的人、物、活动、概念用数据模型这个工具来抽象、表示和处理。根据模型应用的不同目的,数据模型分为两类。第一类是概念模型,它是按照用户的观点来对数据和信息建模,主要用于数据库设计。第二类中的逻辑模型包括层次模型、网状模型、关系模型、面向对象模型和对象关系模型。它是按计算机系统的观点对数据建模,主要用于DBMS的实现。2、概念模型概念模型用于信息世界的建模,一方面应该具有较强的语义表达能力,能够方便直接地表达应用中的各种语义知识,另一方面它还应该简单、清晰、易于用户理解。信息世界涉及的主要概念有:(1)实体(Entity)实体是客观存在并可相互区别的事物。客观存在的、具体的事物都是实体,如一个学生一个办公室、一门课、上级领导的一次检查、采购部门的一次订货、学生和所选课程的关系等都是实体。(2)属性(Attribute)实体所具有的某一特性称为属性。若干个属性组合起来可以刻画某个实体,如学生实体可以由学号、姓名、性别、出生年月、籍贯、是否党员、所在系等属性组成。可以用这些属性的值来表征某一个学生实体,如(050621013,王蕾,女,198909,安徽,是,计算机系)。(3)域(Domain)域是一组具有相同数据类型的值的集合。域是属性的取值范围,如学生姓名的域是字符串集合,性别的域为(男,女)。(4)实体型(EntityType)用实体名及其属性名集合来描述同类实体,称为实体型。例如,学生(学号,姓名,性别,出生年月,籍贯,是否党员,所在系)就是一个实体型。(5)实体集(EntitySet)同一类型实体的集合称为实体集。例如,全体学生即是一个实体集。实体型之间的联系有三种情况:一对一联系(1:1)、一对多联系(1:n)和多对多联系(m.n)。概念模型最常用的表示方法称为实体-联系方法(Entity-RelationshipApproach)。该方法采用E-R图(E-RDiagram)来描述现实世界中的概念模型。E-R图采用三种图形来表示实体及其联系:·矩形:表示实体型,矩形框中写出实体名。·椭圆形:表示属性,椭圆形框中写出属性名,并用无向边将其与相对应的实体型连接起来。·菱形:表示联系,菱形框内写出联系名,并用无向边分别与有关实体型连接起来,同时在无向边的旁边标上联系的类型(一对一、一对多或多对多)。3、数据模型的分类目前在数据库领域最常用的逻辑数据模型有:层次模型(HierarchicalModel)、网状模型(NetworkModel)、关系模型(RelationalModel)、面向对象模型(ObjectOrientedModel)和对象关系模型(ObjectRelationalModel)。其中,关系模型自诞生以后,发展迅速,深受用户的青。它具有以下特点:(1)关系模型建立在严格的数学概念的基础之上。(2)关系模型的概念单一。(3)关系模型的存取路径对用户是透明的,从而具有更高的数据独立性、更好的安全
说首先要数字化,把现实世界种具体的人、物、活动、概念用数据模型这个工具来抽象、表 示和处理。 根据模型应用的不同目的,数据模型分为两类。第一类是概念模型,它是按照用户的观 点来对数据和信息建模,主要用于数据库设计。第二类中的逻辑模型包括层次模型、网状模 型、关系模型、面向对象模型和对象关系模型。它是按计算机系统的观点对数据建模,主要 用于 DBMS 的实现。 2、概念模型 概念模型用于信息世界的建模,一方面应该具有较强的语义表达能力,能够方便直接地 表达应用中的各种语义知识,另一方面它还应该简单、清晰、易于用户理解。 信息世界涉及的主要概念有: (1)实体(Entity) 实体是客观存在并可相互区别的事物。客观存在的、具体的事物都是实体,如一个学生、 一个办公室、一门课、上级领导的一次检查、采购部门的一次订货、学生和所选课程的关系 等都是实体。 (2)属性(Attribute) 实体所具有的某一特性称为属性。若干个属性组合起来可以刻画某个实体,如学生实体 可以由学号、姓名、性别、出生年月、籍贯、是否党员、所在系等属性组成。可以用这些属 性的值来表征某一个学生实体,如(050621013,王蕾,女,198909,安徽,是,计算机系)。 (3)域(Domain) 域是一组具有相同数据类型的值的集合。域是属性的取值范围,如学生姓名的域是字符 串集合,性别的域为(男,女)。 (4)实体型(Entity Type) 用实体名及其属性名集合来描述同类实体,称为实体型。例如,学生(学号,姓名,性 别,出生年月,籍贯,是否党员,所在系)就是一个实体型。 (5)实体集(Entity Set) 同一类型实体的集合称为实体集。例如,全体学生即是一个实体集。 实体型之间的联系有三种情况:一对一联系(1:1)、一对多联系(1:n)和多对多联系 (m:n)。 概念模型最常用的表示方法称为实体-联系方法(Entity-Relationship Approach)。该方法 采用 E-R 图(E-R Diagram)来描述现实世界中的概念模型。 E-R 图采用三种图形来表示实体及其联系: ·矩形:表示实体型,矩形框中写出实体名。 ·椭圆形:表示属性,椭圆形框中写出属性名,并用无向边将其与相对应的实体型连接 起来。 ·菱形:表示联系,菱形框内写出联系名,并用无向边分别与有关实体型连接起来,同 时在无向边的旁边标上联系的类型(一对一、一对多或多对多)。 3、数据模型的分类 目前在数据库领域最常用的逻辑数据模型有:层次模型(Hierarchical Model)、网状模 型(Network Model)、关系模型(Relational Model)、面向对象模型(Object Oriented Model) 和对象关系模型(Object Relational Model)。 其中,关系模型自诞生以后,发展迅速,深受用户的青睐。它具有以下特点: (1)关系模型建立在严格的数学概念的基础之上。 (2)关系模型的概念单一。 (3)关系模型的存取路径对用户是透明的,从而具有更高的数据独立性、更好的安全
保密性,也大大简化了程序员的工作和数据库开发建立的工作。1.2关系数据库1.2.1关系1、重要术语域(Domain):一组具有相同数据类型的值的集合。如自然数,0,1),都可以是域。笛卡尔积(CartesianProduct):域上的一种集合运算。关系(Relation):一组域上笛卡尔积的有限子集,关系就是一张二维表。表的每一行称为一个元组。表的每一列对应一个域,每一列有一个唯一的名字,称为属性。表1-1就是一个关系:表1-1一个关系学号姓名性别籍贯出生日期是否团员男否山东00001李平1978/12/11女是00002王佳佳1980/04/17江苏否00003陈瑶女1979/09/02上海是00004张山洲男1982/11/18安徽候选码(Candidatekey)指的是某个属性组,该属性组能唯一标识一个元组。候选码也称为主关键字、主键。若一个关系有多个候选码,则选定一个为主码(Primarykey)。候选码的诸属性称为主属性(Primeattribute)。若F是关系R的一个或一组属性,但F不是R的码。K是关系S的主码。如果F和K相对应,则称F是R的外码(Foreignkey)或外键,或外部关键字。关系通常具备如下性质:(1)每一列中的数据项属于同一种数据类型,来自同一个域,即同质的。(2)不同的列可出自同一个域,其中的每一列为一个属性,不同的属性的名称互不相同。(3)行和列的次序可以任意交换。(4)不充许有重复的行,至少两个元组的候选码不能完全相同。(5)表中的数据项均是不可再分的,即每一个具体的数据都必须取原子值。2、关系模式关系模式(RelationalSchema)就是对关系的描述,它是“型”,而关系是“值”。可以把关系模式形式化地表示为一个五元组:R(U,D,DOM,F)其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映像集合,F为属性间数据的依赖关系集合。1.2.2关系的运算关系的运算用来表达查询。关系运算的对象是关系,其运算结果也是关系。关系的运算分为传统的集合运算和专门的关系运算。1、传统的集合运算(1)并(Union)关系R与关系S的并由属于R或属于S的元组组成。(2)交(Intersection)关系R与关系S的交由既属于R又属于S的元组组成
保密性,也大大简化了程序员的工作和数据库开发建立的工作。 1.2 关系数据库 1.2.1 关系 1、重要术语 域(Domain):一组具有相同数据类型的值的集合。如自然数,{0,1},都可以是域。 笛卡尔积(Cartesian Product):域上的一种集合运算。 关系(Relation):一组域上笛卡尔积的有限子集,关系就是一张二维表。表的每一行称 为一个元组。表的每一列对应一个域,每一列有一个唯一的名字,称为属性。表 1-1 就是一 个关系: 表 1-1 一个关系 学号 姓名 性别 出生日期 是否团员 籍贯 00001 李平 男 1978/12/11 否 山东 00002 王佳佳 女 1980/04/17 是 江苏 00003 陈瑶 女 1979/09/02 否 上海 00004 张山洲 男 1982/11/18 是 安徽 候选码(Candidate key)指的是某个属性组,该属性组能唯一标识一个元组。候选码也 称为主关键字、主键。 若一个关系有多个候选码,则选定一个为主码(Primary key)。候选码的诸属性称为 主属性(Prime attribute)。 若 F 是关系 R 的一个或一组属性,但 F 不是 R 的码。K 是关系 S 的主码。如果 F 和 K 相对应,则称 F 是 R 的外码(Foreign key)或外键,或外部关键字。 关系通常具备如下性质: (1)每一列中的数据项属于同一种数据类型,来自同一个域,即同质的。 (2)不同的列可出自同一个域,其中的每一列为一个属性,不同的属性的名称互不相 同。 (3)行和列的次序可以任意交换。 (4)不允许有重复的行,至少两个元组的候选码不能完全相同。 (5)表中的数据项均是不可再分的,即每一个具体的数据都必须取原子值。 2、关系模式 关系模式(Relational Schema)就是对关系的描述,它是“型”,而关系是“值”。 可以把关系模式形式化地表示为一个五元组: R(U,D,DOM,F) 其中 R 为关系名,U 为组成该关系的属性名集合,D 为属性组 U 中属性所来自的域, DOM 为属性向域的映像集合,F 为属性间数据的依赖关系集合。 1.2.2 关系的运算 关系的运算用来表达查询。关系运算的对象是关系,其运算结果也是关系。 关系的运算分为传统的集合运算和专门的关系运算。 1、传统的集合运算 (1)并(Union) 关系 R 与关系 S 的并由属于 R 或属于 S 的元组组成。 (2)交(Intersection) 关系 R 与关系 S 的交由既属于 R 又属于 S 的元组组成
(3)差(Exception)关系R与关系S的差由属于R但不属于S的元组组成。2、专门的关系运算(1)选择(Selection)选择运算是从关系R中选择满足给定条件的诸元组,是从行的角度进行的运算。例如:要在学生档案中查找男生的信息,就可以查询满足条件“性别=“男”的元组。(2)投影(Projection)投影运算是从关系R中挑选出若干属性列组成的新的关系,是从列的角度进行的运算。例如:要查找所有学生的籍贯,就可以在属性“籍贯”上对该关系进行投影操作。注意:投影操作不仅取消了原关系中的某些列,而且可能会取消某些元组。因为在投影操作后,可能会出现重复的行,那么应该取消这些完全重复的行。(3)联接(Join)连接运算是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。其中有两种非常重要也很常用的连接:等值连接和自然连接。自然连接是一种特殊的等值连接,它们都是做属性间为“=”的连接运算,不同的是自然连接会去掉等值连接的结果中可能重复的属性列。1.3数据库设计基础1.3.1概述广义地讲,数据库设计是指数据库及其应用系统的设计,即设计整个数据库应用系统。狭义地讲,是指设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用系统设计的一部分。1.3.2数据库设计的特点数据库设计的特点主要有:1、数据库建设的基本规律重视数据,注重技术,强化管理。2、结构(数据)设计和行为(处理)设计相结合在整个设计过程中把数据库结构设计和对数据的处理设计密切结合起来。1.3.3数据库设计方法数据库设计方法主要有:·新奥尔良(NewOrleans)方法·基于E-R模型的数据库设计方法·3NF(第三范式)的设计方法·ODL(ObjectDefinitionLanguage)方法1.3.4数据库设计的基本步骤数据库设计分为6个步骤:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护。其中,需求分析和概念设计可以独立于任何数据库管理系统进行。逻辑设计和物理设计与选用的DBMS密切相关。1、需求分析阶段进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难、最耗时的一个步骤。2、概念结构设计阶段
(3)差(Exception) 关系 R 与关系 S 的差由属于 R 但不属于 S 的元组组成。 2、专门的关系运算 (1)选择(Selection) 选择运算是从关系 R 中选择满足给定条件的诸元组,是从行的角度进行的运算。 例如:要在学生档案中查找男生的信息,就可以查询满足条件“性别=‘男’”的元组。 (2)投影(Projection) 投影运算是从关系 R 中挑选出若干属性列组成的新的关系,是从列的角度进行的运算。 例如:要查找所有学生的籍贯,就可以在属性“籍贯”上对该关系进行投影操作。 注意:投影操作不仅取消了原关系中的某些列,而且可能会取消某些元组。因为在投影 操作后,可能会出现重复的行,那么应该取消这些完全重复的行。 (3)联接(Join) 连接运算是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。其中有两种非常 重要也很常用的连接:等值连接和自然连接。自然连接是一种特殊的等值连接,它们都是做 属性间为“=”的连接运算,不同的是自然连接会去掉等值连接的结果中可能重复的属性列。 1.3 数据库设计基础 1.3.1 概述 广义地讲,数据库设计是指数据库及其应用系统的设计,即设计整个数据库应用系统。 狭义地讲,是指设计数据库本身,即设计数据库的各级模式并建立数据库,这是数据库应用 系统设计的一部分。 1.3.2 数据库设计的特点 数据库设计的特点主要有: 1、数据库建设的基本规律 重视数据,注重技术,强化管理。 2、结构(数据)设计和行为(处理)设计相结合 在整个设计过程中把数据库结构设计和对数据的处理设计密切结合起来。 1.3.3 数据库设计方法 数据库设计方法主要有: ·新奥尔良(New Orleans)方法 ·基于 E-R 模型的数据库设计方法 ·3NF(第三范式)的设计方法 ·ODL(Object Definition Language)方法 1.3.4 数据库设计的基本步骤 数据库设计分为 6 个步骤:需求分析、概念结构设计、逻辑结构设计、物理结构设计、 数据库实施、数据库运行和维护。其中,需求分析和概念设计可以独立于任何数据库管理系 统进行。逻辑设计和物理设计与选用的 DBMS 密切相关。 1、需求分析阶段 进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整 个设计过程的基础,是最困难、最耗时的一个步骤。 2、概念结构设计阶段