1、数据库数据库(Database,简称简称DB)是长期储存在计算是长期储存在计算机内、有组织的、可共享的大量数据集合。机内、有组织的、可共享的大量数据集合。数据库系统数据库系统(Database System,简称,简称DBS)是是指在计算机系统中引入数据库后的系统构成。指在计算机系统中引入数据库后的系统构成。数据库管理系统数据库管理系统(Database Management System,简称,简称DBMS)是位于用户与操作系统是位于用户与操作系统之间的一层数据管理软件。之间的一层数据管理软件。数据库系统的特点及用途数据库系统的特点及用途数据库系统数据库系统现实世界的数据描述现实世界的数据描
2、述数据库的逻辑结构数据库的逻辑结构数据库管理系统数据库管理系统几种典型的数据库管理系统几种典型的数据库管理系统数据结构概述数据结构概述工程数据及其管理工程数据及其管理 数据库仅有数据库仅有30年历史,现为具有压倒年历史,现为具有压倒优势的计算机应用技术。优势的计算机应用技术。 在图书馆、财务、人事、金融、医疗、在图书馆、财务、人事、金融、医疗、科技、刑侦、教育、工业等等各行各业均科技、刑侦、教育、工业等等各行各业均有广泛的应用。有广泛的应用。数据处理就是对原始数据进行科学地采集、数据处理就是对原始数据进行科学地采集、整理、存储、加工和传送,从繁杂的数据中获整理、存储、加工和传送,从繁杂的数据中
3、获取所需的资料,提取有用的数据成分作为指挥取所需的资料,提取有用的数据成分作为指挥生产、优化管理的决策依据。生产、优化管理的决策依据。数据处理的几个特点数据处理的几个特点:涉及的数据量大,内存中只能存放一小部分,涉及的数据量大,内存中只能存放一小部分,大部分都将保存在磁盘等辅助存储器中;大部分都将保存在磁盘等辅助存储器中;数据需长期保留在计算机系统中,并不随某数据需长期保留在计算机系统中,并不随某个程序的执行完毕而消失;个程序的执行完毕而消失;数据常常需要共享,包括供多个单位、多个数据常常需要共享,包括供多个单位、多个应用程序共享。应用程序共享。1. 人工管理:基于人工人工管理:基于人工(1)
4、 计算机系统不提供对用户数据的管理功能计算机系统不提供对用户数据的管理功能 (2) 数据不能共享数据不能共享 (3) 不单独保存数据不单独保存数据 2. 文件系统:基于操作系统文件系统:基于操作系统(1) 文件系统提供的功能有限,不能满足应用程序对数据访文件系统提供的功能有限,不能满足应用程序对数据访问日益增长的要求问日益增长的要求 。(2) 数据的冗余和不一致性。数据的冗余和不一致性。(3) 数据的无结构性数据的无结构性 。3. 数据库管理系统数据库管理系统 :当前人们进行数据管理的主要形式。:当前人们进行数据管理的主要形式。 (1)支持对大量或超大量数据的存储、管理与控制支持对大量或超大量
5、数据的存储、管理与控制 (2)给用户或应用程序提供了良好的数据库语言给用户或应用程序提供了良好的数据库语言 a. 数据定义语言数据定义语言DDL b. 数据操作语言数据操作语言DML或查询语言或查询语言(Query Language) 时期时期 40年代中年代中-50年代中年代中 产生的背景产生的背景 应用需求应用需求科学计算科学计算 硬件水平硬件水平无直接存取存储设备无直接存取存储设备 软件水平软件水平没有操作系统没有操作系统 处理方式处理方式批处理批处理 特点特点 数据的管理者:应用程序,数据不保存。数据的管理者:应用程序,数据不保存。 数据面向的对象:某一应用程序数据面向的对象:某一应用
6、程序 数据的共享程度:无共享、冗余度极大数据的共享程度:无共享、冗余度极大 数据的独立性:不独立,完全依赖于程序数据的独立性:不独立,完全依赖于程序 数据的结构化:无结构数据的结构化:无结构 数据控制能力:应用程序自己控制数据控制能力:应用程序自己控制 应用程序应用程序数据集数据集应用程序应用程序数据集数据集应用程序应用程序数据集数据集n. 时期时期 50年代末年代末-60年代中年代中 产生的背景产生的背景 应用需求应用需求科学计算、管理科学计算、管理 硬件水平硬件水平磁盘、磁鼓磁盘、磁鼓 软件水平软件水平有文件系统有文件系统 处理方式处理方式联机实时处理、批处理联机实时处理、批处理特点特点数
7、据的管理者:文件系统,数据可长期保存数据的管理者:文件系统,数据可长期保存数据面向的对象:某一应用程序数据面向的对象:某一应用程序 数据的共享程度:共享性差、冗余度大数据的共享程度:共享性差、冗余度大数据的结构化:记录内有结构数据的结构化:记录内有结构,整体无结构整体无结构数据的独立性:独立性差,数据的逻辑结构数据的独立性:独立性差,数据的逻辑结构改变必须修改应用程序改变必须修改应用程序数据控制能力:应用程序自己控制数据控制能力:应用程序自己控制应用程序应用程序文件文件应用程序应用程序文件文件2应用程序应用程序文件文件n存取存取方法方法. 记录内有结构。记录内有结构。 数据的结构是靠程序定义和
8、解释的。数据的结构是靠程序定义和解释的。 数据只能是定长的。数据只能是定长的。可以间接实现数据变长要求,但访问相应数可以间接实现数据变长要求,但访问相应数据的应用程序复杂了。据的应用程序复杂了。 文件间是独立的,因此数据整体无结构。文件间是独立的,因此数据整体无结构。可以间接实现数据整体的有结构,但必须在可以间接实现数据整体的有结构,但必须在应用程序中对描述数据间的联系。应用程序中对描述数据间的联系。 数据的最小存取单位是记录。数据的最小存取单位是记录。RatioD RatioL DEF ELNOSECTNAME/*HIGHTL Lx Ly LnNm Lm1 Lm2 LmnHD HLNpP1
9、Lp1 Pn LpnNfF1 Lf1 Fn LfnNqQ1 Lq11 Lq12 Qn1 Lqn1 Lqn2TMat(重复上面格式重复上面格式)0.85 0.85 500 38.0101*5554600 4600 4600 460000 01-12 200035 3000 -10 1000 14 15671-8 2000 300030Q235102I30a4400 4400 2000 200000 03RA101 800 6 2000 11 3200000Q345符号符号含义含义备注备注RatioD静载时实际应力与容许应力的比值静载时实际应力与容许应力的比值实数。实数。RatioL动载时实际应力
10、与容许应力的比值动载时实际应力与容许应力的比值实数。实数。DEF最大容许挠度最大容许挠度实数。实数。EL参与计算的梁所在标高参与计算的梁所在标高实数。实数。NO梁编号梁编号整数。编号可以是任意自然数。整数。编号可以是任意自然数。SECTNAME/*HIGHT截面名称截面名称/*高度高度可选项,只有在指定截面或者梁高度时使用。二者只能选其可选项,只有在指定截面或者梁高度时使用。二者只能选其一。一。SECTNAME以字母开头,不间断的字符串。首字符:以字母开头,不间断的字符串。首字符:-槽钢;槽钢;I工字钢;工字钢;HH型钢;型钢;P板拼梁;板拼梁;G大板梁。大板梁。*HIGHT以以*开头,整数。
11、开头,整数。Np平面内集中荷载数平面内集中荷载数整数。自然数。最大为整数。自然数。最大为10。当。当Np=0时,下面一行不输入数据。时,下面一行不输入数据。P1 Lp1 Pn Lpn集中荷载大小、位置集中荷载大小、位置实数,整数。实数,整数。Pi可以直接是荷载值,也可以借用其他梁的端可以直接是荷载值,也可以借用其他梁的端反力。反力。RAxxx表示借用梁号为表示借用梁号为xxx的左端反力;的左端反力;RBxxx表示借表示借用梁号为用梁号为xxx的右端反力。的右端反力。Nf平面外集中荷载数平面外集中荷载数整数。自然数。最大为整数。自然数。最大为5。当。当Nf=0时,下面一行不输入数据。时,下面一行
12、不输入数据。F1 Lf1 Fn Lfn集中荷载大小、位置集中荷载大小、位置实数,整数。实数,整数。Fi可以直接是荷载值,也可以借用其他梁的端可以直接是荷载值,也可以借用其他梁的端反力。反力。RAxxx表示借用梁号为表示借用梁号为xxx的左端反力;的左端反力;RBxxxX表示表示借用梁号为借用梁号为xxx的右端反力。的右端反力。Nq均布荷载数均布荷载数整数。自然数。最大为整数。自然数。最大为5。当。当Nq=0时,下面一行不输入数据。时,下面一行不输入数据。Q1 Lq11 Lq12 Qn1 Lqn1 Lqn2均布荷载大小、始终点均布荷载大小、始终点实数,整数,整数。实数,整数,整数。T工作温度,工
13、作温度,0表示缺省值表示缺省值20整数整数Mat材料,材料,0表示缺省值表示缺省值(工字钢和槽钢为工字钢和槽钢为Q235,H型钢为型钢为Q345,板拼为,板拼为Q345)不间断的字符串不间断的字符串 时期时期 60年代末以来年代末以来 产生的背景产生的背景 应用背景应用背景大规模管理大规模管理 硬件背景硬件背景大容量磁盘大容量磁盘 软件背景软件背景有数据库管理系统有数据库管理系统 处理方式处理方式联机实时处理联机实时处理,分布处理分布处理,批处理批处理 特点特点 数据的管理者:数据的管理者:DBMS 数据面向的对象:现实世界数据面向的对象:现实世界 数据的共享程度:共享性高数据的共享程度:共享
14、性高 数据的独立性:高度的物理独立性和一定的数据的独立性:高度的物理独立性和一定的 逻辑独立性逻辑独立性 数据的结构化:整体结构化数据的结构化:整体结构化 数据控制能力:由数据控制能力:由DBMS统一管理和控制统一管理和控制DBMS应用程序应用程序1应用程序应用程序2数据库数据库 冗余度低冗余度低 共享性好共享性好 数据独立性高数据独立性高 物理独立、逻辑独立物理独立、逻辑独立 灵活性好灵活性好 可统一管理与控制可统一管理与控制 可靠的数据存储与管理(含共享),高效的可靠的数据存储与管理(含共享),高效的数据存取和方便的应用开发等数据存取和方便的应用开发等数据库数据库是为满足某一组织中许多用户
15、的许是为满足某一组织中许多用户的许多应用系统的需要,而在计算机系统中所多应用系统的需要,而在计算机系统中所建立起来的相互关联的数据的集合,这些建立起来的相互关联的数据的集合,这些数据按照一定的数据模型来组织和存储,数据按照一定的数据模型来组织和存储,并能为所有的应用业务所共享。并能为所有的应用业务所共享。 在数据库中,数据的最小单位是数据项在数据库中,数据的最小单位是数据项(或字段)。(或字段)。 信息管理系统信息管理系统(MIS)、决策支持系统、决策支持系统(DSS) 计算机辅助教学计算机辅助教学(CAI)、管理、管理 CAD的基础的基础 人工智能人工智能(AI)、专家系统、专家系统(ES)
16、和人工神经网和人工神经网等的基础等的基础 科学计算的基础科学计算的基础信息:信息是反映客观世界中各种事物的特征和变化的组合,信息:信息是反映客观世界中各种事物的特征和变化的组合,是经过加工处理并对客观世界产生影响的数据。信息是对是经过加工处理并对客观世界产生影响的数据。信息是对数据的解释,是经过加工处理后的一种数据形式,它能提数据的解释,是经过加工处理后的一种数据形式,它能提高人们对事物认识的深刻程度,对决策或行为有现实或潜高人们对事物认识的深刻程度,对决策或行为有现实或潜在的价值。在的价值。往往有它的时间性,也依赖于使用信息的人们。往往有它的时间性,也依赖于使用信息的人们。 数据:是为了人们
17、对客观世界的了解与交流,常常需要对各种数据:是为了人们对客观世界的了解与交流,常常需要对各种事物进行描述,对事物描述的特定符号。是反映客观世界事物进行描述,对事物描述的特定符号。是反映客观世界的信息载体,是载荷信息可以鉴别的符号,这些符号包括的信息载体,是载荷信息可以鉴别的符号,这些符号包括数字、文字、图像和语音等数字、文字、图像和语音等 。 数据和信息的联系与区别:人们通过解释、推论、归纳、分析数据和信息的联系与区别:人们通过解释、推论、归纳、分析和综合等方法,从数据中获取有意义的内容就称为信息。和综合等方法,从数据中获取有意义的内容就称为信息。数据是信息存在的一种形式,只有通过解释或处理才
18、能成数据是信息存在的一种形式,只有通过解释或处理才能成为有用的信息。同样的数据可因载体的不同表现出不同的为有用的信息。同样的数据可因载体的不同表现出不同的形式,而信息则不会随信息载体的不同而改变。形式,而信息则不会随信息载体的不同而改变。概念:是指一个实际可运行的、完整的、按照数概念:是指一个实际可运行的、完整的、按照数据库方式存储、维护和向应用系统提供数据或据库方式存储、维护和向应用系统提供数据或信息支持的系统。信息支持的系统。组成:硬件、软件、数据库、用户组成:硬件、软件、数据库、用户硬件:主机、外设硬件:主机、外设软件:操作系统、软件:操作系统、DBMS、宿主语言、实用程、宿主语言、实用
19、程序、应用程序序、应用程序数据库数据库(DB) :物理数据库、描述数据库:物理数据库、描述数据库(数据数据字典字典)用户:数据库管理员用户:数据库管理员(DBA)、系统分析员、应、系统分析员、应用程序员、终端用户用程序员、终端用户数据按从底向上的顺序分三层结构。数据按从底向上的顺序分三层结构。 物理层:是最底层,基于操作系统。它给出了复杂物理层:是最底层,基于操作系统。它给出了复杂而详细的底层数据结构,具体说明数据库中的数据而详细的底层数据结构,具体说明数据库中的数据在存储介质上是如何存放的,以及对这些数据的相在存储介质上是如何存放的,以及对这些数据的相关操作。它的物质基础是相关的计算机硬件关
20、操作。它的物质基础是相关的计算机硬件 。 逻辑层:中间层。它是针对逻辑层:中间层。它是针对DBMS的管理人员需要的管理人员需要使用的数据,该层描述数据库中应当存储哪些数据使用的数据,该层描述数据库中应当存储哪些数据以及这些存储的数据相互之间有些什么关系以及这些存储的数据相互之间有些什么关系 视图层:最高层。它是针对广大数据库用户如何看视图层:最高层。它是针对广大数据库用户如何看待他们的应用业务系统所需要的数据的。待他们的应用业务系统所需要的数据的。应用系统应用系统应用开发工具软件应用开发工具软件数据库管理系统数据库管理系统操作系统操作系统硬件硬件/数据库数据库数据库用户数据库用户硬件硬件Dat
21、abaseOSDBMS应用开发工具应用开发工具应用程序应用程序DBA用户用户用户用户用户用户应用程序员应用程序员数据库管理员数据库管理员(DBA):指专业的数据库设计与维护:指专业的数据库设计与维护(特别是对部门或单位的数据库系统)人员。主要(特别是对部门或单位的数据库系统)人员。主要职责:职责: 根据用户的需求,理解根据用户的需求,理解DBMS需要存储什么数需要存储什么数据以及如何使用数据,利用数据定义语言据以及如何使用数据,利用数据定义语言DDL定定义数据模式,定义存储结构和存取方式;修改数义数据模式,定义存储结构和存取方式;修改数据模式和物理存储组织。据模式和物理存储组织。 数据访问授权
22、。数据访问授权。 定义数据的完整性约束。定义数据的完整性约束。 数据备份、日志维护和故障恢复。数据备份、日志维护和故障恢复。数据库用户:主要包括终端用户和数据库应用软件数据库用户:主要包括终端用户和数据库应用软件系统的开发者系统的开发者 。1.3.1 信息的三个领域信息的三个领域现实世界现实世界观念世界观念世界数据世界数据世界 数据库的核心问题是数据模型数据库的核心问题是数据模型现实世界现实世界信息世界信息世界 概念模型概念模型机器世界机器世界 数据模型数据模型认识抽象认识抽象转换转换现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程数据模型:它是一组严格定义的概念的集合,数据模型:它是
23、一组严格定义的概念的集合,它们精确地描述了数据、数据之间的相它们精确地描述了数据、数据之间的相互联系、对数据的操作以及有关的语义互联系、对数据的操作以及有关的语义约束规则。约束规则。E. F. Codd指出:指出:“一个数据一个数据模型实质上就是向用户提供的一组规则,模型实质上就是向用户提供的一组规则,规定用户如何组织数据结构以及允许对规定用户如何组织数据结构以及允许对它们执行哪些相应的操作。它们执行哪些相应的操作。” 数据模型组成:(三要素)数据模型组成:(三要素)(1)数据结构:指所研究的对象类型的集合,这些)数据结构:指所研究的对象类型的集合,这些对象类型包括:数据属性(包括类型、内容和
24、性对象类型包括:数据属性(包括类型、内容和性质)和数据相互之间的联系。是建立数据模型的质)和数据相互之间的联系。是建立数据模型的基础。基础。(2)数据操作:指对于数据库中各种对象的实例,)数据操作:指对于数据库中各种对象的实例,允许对它们执行的操作的集合,数据库对数据的允许对它们执行的操作的集合,数据库对数据的操作主要包括查询与更新两项功能。操作主要包括查询与更新两项功能。(3)数据的完整性约束规则:指定义数据的约束条)数据的完整性约束规则:指定义数据的约束条件,即在给定的数据模型中,规定数据及其联系件,即在给定的数据模型中,规定数据及其联系所具有的制约和依存规则,用以限定符合数据模所具有的制
25、约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。正确、有效和相容。实体模型的建立应考虑以下几方面:实体模型的建立应考虑以下几方面: 对象与属性对象与属性 实体与实体集实体与实体集 实体集之间的联系实体集之间的联系 (1)一对一一对一(1:1) A B (2)一对多一对多(1:m) A B (3)多对多多对多(m:m) A B 实体模型:是设计数据库的先导,是确定实体模型:是设计数据库的先导,是确定数据库中包含哪些内容的关键。数据库中包含哪些内容的关键。 用户需要数据库回答哪些问题用户需要数据库回答哪些问题 实
26、体模型应该包含哪些实体集才能圆满回答实体模型应该包含哪些实体集才能圆满回答用户问题用户问题 这些实体集中哪些是明显的对象这些实体集中哪些是明显的对象 根据考虑问题的范围和角度,确定实体集间根据考虑问题的范围和角度,确定实体集间的某种联系也作为实体来处理的某种联系也作为实体来处理 根据现有技术条件,实际上能够观测和存储根据现有技术条件,实际上能够观测和存储哪些对象和哪些属性哪些对象和哪些属性包括学生、课程、教学、学习、任课教师等方面,对象包括学生、课程、教学、学习、任课教师等方面,对象和属性如下:和属性如下:学生:学号、姓名、性别、年龄学生:学号、姓名、性别、年龄课程:课程号、课程名、学时数课程
27、:课程号、课程名、学时数教员:姓名、年龄、职称教员:姓名、年龄、职称学习:学号、课程号、分数学习:学号、课程号、分数任课:课程号、任课教员任课:课程号、任课教员它们之间的联系:它们之间的联系:学生学生 课程课程 教员教员 学习学习 课程课程数据模型是实体模型的数据化。数据模型是实体模型的数据化。三级数据模型:三级数据模型:(1)概念数据模型()概念数据模型(Conceptual data model):对应于视):对应于视图层,是面向计算机用户、面向现实世界的数据模型,与图层,是面向计算机用户、面向现实世界的数据模型,与DBMS无关,不依赖于具体的计算机系统。无关,不依赖于具体的计算机系统。
28、概念数据模型主要有:概念数据模型主要有:E-R模型、模型、EER模型、模型、OO模型以模型以及及IDEFIX模型等。模型等。(2)逻辑数据模型()逻辑数据模型(Logical data model):反映数据的逻):反映数据的逻辑结构,例如文件、记录和字段等,它与辑结构,例如文件、记录和字段等,它与DBMS有关。有关。 逻辑数据模型主要有:层次数据模型、网状数据模型、关逻辑数据模型主要有:层次数据模型、网状数据模型、关系数据模型和实体系数据模型和实体-联系模型。联系模型。(3)物理数据模型()物理数据模型(Physical data model):反映数据的存):反映数据的存储结构,例如存储介
29、质的物理块、指针和索引等。储结构,例如存储介质的物理块、指针和索引等。1.层次模型层次模型满足下面两个条件的基本层次联系的集合为层次模型。满足下面两个条件的基本层次联系的集合为层次模型。有且只有一个结点没有双亲结点,这个结点称为根结点;有且只有一个结点没有双亲结点,这个结点称为根结点;根以外的其它结点有且只有一个双亲结点。根以外的其它结点有且只有一个双亲结点。 树根树根 A 第一层第一层子树子树 B C D 第二层第二层 E F G H I J 第三层第三层树叶树叶 K L M第四层第四层 1 根结点根结点 2 兄弟结点兄弟结点 3 叶结点叶结点 4 兄弟结点兄弟结点 5 叶结点叶结点 叶结点
30、叶结点层次模型中的几个术语:根结点,双亲结层次模型中的几个术语:根结点,双亲结点,兄弟结点,叶结点点,兄弟结点,叶结点实例:教员实例:教员-学生数据模型学生数据模型特点:特点:结点的双亲是唯一的结点的双亲是唯一的只能直接处理一对多的实体联系只能直接处理一对多的实体联系每个记录类型定义一个排序字段,也称为每个记录类型定义一个排序字段,也称为码字段码字段任何记录值只有按其路径查看时,才能显任何记录值只有按其路径查看时,才能显出它的全部意义出它的全部意义没有一个子女记录值能够脱离双亲记录值没有一个子女记录值能够脱离双亲记录值而独立存在而独立存在 优点优点层次数据模型简单,对具有一对多的层次层次数据模
31、型简单,对具有一对多的层次关系的部门描述自然、直观,容易理解关系的部门描述自然、直观,容易理解性能优于关系模型,不低于网状模型性能优于关系模型,不低于网状模型层次数据模型提供了良好的完整性支持层次数据模型提供了良好的完整性支持 缺点缺点多对多联系表示不自然多对多联系表示不自然对插入和删除操作的限制多对插入和删除操作的限制多查询子女结点必须通过双亲结点查询子女结点必须通过双亲结点层次命令趋于程序化层次命令趋于程序化2.网络模型网络模型满足下面两个条件的基本层次联系的集合为网状模型。满足下面两个条件的基本层次联系的集合为网状模型。允许一个以上的结点无双亲;允许一个以上的结点无双亲;一个结点可以有多
32、于一个的双亲一个结点可以有多于一个的双亲。 A B C D E F I J G H学生宿舍学生宿舍学生学生教研室教研室系系教师教师 优点优点能够更为直接地描述现实世界,如一个结点可能够更为直接地描述现实世界,如一个结点可以有多个双亲以有多个双亲具有良好的性能,存取效率较高具有良好的性能,存取效率较高 缺点缺点结构比较复杂,而且随着应用环境的扩大,数结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用据库的结构就变得越来越复杂,不利于最终用户掌握户掌握DDL、DML语言复杂,用户不容易使用语言复杂,用户不容易使用3.关系模型关系模型-二维表二维表 R A1 A2 .
33、An r1 a11 a12 . a1n r2 a21 a22 . a2n . rn an1 an2 . ann建立在严格的数学概念的基础上建立在严格的数学概念的基础上概念单一。数据结构简单、清晰,用户易懂易用概念单一。数据结构简单、清晰,用户易懂易用实体和各类联系都用关系来表示。实体和各类联系都用关系来表示。对数据的检索结果也是关系。对数据的检索结果也是关系。关系模型的存取路径对用户透明关系模型的存取路径对用户透明具有更高的数据独立性,更好的安全保密性具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作简化了程序员的工作和数据库开发建立的工作存取路径对用户透明导致查询
34、效率往往不如非存取路径对用户透明导致查询效率往往不如非关系数据模型关系数据模型为提高性能,必须对用户的为提高性能,必须对用户的查询请求进行优化查询请求进行优化增加了开发数据库管理系统的难度增加了开发数据库管理系统的难度4.实体实体-联系模型(联系模型(E-R模型模型) 人们在开发一个应用系统时,在对用户的需求充人们在开发一个应用系统时,在对用户的需求充分了解后就要进行概念设计,根据需求分析把紧分了解后就要进行概念设计,根据需求分析把紧密相关的数据组织在一起,绘制出数据库结构的密相关的数据组织在一起,绘制出数据库结构的初步蓝图。它是面向用户的,不涉及到任何具体初步蓝图。它是面向用户的,不涉及到任
35、何具体的的DBMS。E-R数据模型就是供用户(或设计者)数据模型就是供用户(或设计者)来绘制这种蓝图的行之有效的工具。来绘制这种蓝图的行之有效的工具。实体实体(Entity):客观存在并可相互区别的事物:客观存在并可相互区别的事物实体(型)内部的联系和实体实体(型)内部的联系和实体(型)之间的联系(型)之间的联系职工号职工号姓名姓名性别性别年龄年龄职称职称书号书号书名书名简介简介价格价格课程名课程名学分学分课程号课程号专业系专业系班编号班编号成绩成绩人数人数学号学号姓名姓名性别性别年龄年龄教师教师参考书参考书讲授讲授课程课程m mn n1 1选修选修m mn n领导领导1 1n n学生学生组成
36、组成班级班级n n1 1不同的联系不同的联系和实体要用和实体要用不同的名称不同的名称 外模式外模式 -用户级用户级 它最接近用户,是数据库用户看到的数据视图。或者说外它最接近用户,是数据库用户看到的数据视图。或者说外模式是利用逻辑数据模型对用户所用到的那部分数据进行的模式是利用逻辑数据模型对用户所用到的那部分数据进行的描述。也称为用户视图或子模式。描述。也称为用户视图或子模式。 概念模式概念模式-概念级概念级 是用逻辑数据模型对一个单位的数据描述,包括现实世界是用逻辑数据模型对一个单位的数据描述,包括现实世界中实体的性质与联系,定义记录、数据项、数据的完整性约中实体的性质与联系,定义记录、数据
37、项、数据的完整性约束及记录之间的联系。它描述了数据库中全体数据的逻辑结束及记录之间的联系。它描述了数据库中全体数据的逻辑结构与特征,整个数据库只有一个概念模式,它是所有用户公构与特征,整个数据库只有一个概念模式,它是所有用户公共的数据视图。也称为模式或共的数据视图。也称为模式或DBA视图。视图。 内模式内模式 -物理级物理级 也称存储模式,是用物理数据模型对数据的描述,对一般也称存储模式,是用物理数据模型对数据的描述,对一般用户是透明的。也称为系统程序员视图或数据存储结构。用户是透明的。也称为系统程序员视图或数据存储结构。 应用系统 应用 1 应用 2 应用 3 应用 4 应用 m 外模式 外
38、模式 1 外模式 2 外模式 n 概 念 模 式 内 模 式 DBMS O . S . 数据库 数 据 库 应用应用A A应用应用B B应用应用C C应用应用D D外模式外模式1 1外模式外模式2 2外模式外模式3 3模式模式内模式内模式数据库数据库外模式外模式/ /模式映象模式映象模式模式/ /内模式映象内模式映象 数据库管理系统数据库管理系统(DBMS)是一个专门处理、是一个专门处理、访问数据库的软件系统。它具有对数据库的定访问数据库的软件系统。它具有对数据库的定义、建立、管理、维护、通讯以及设备控制等义、建立、管理、维护、通讯以及设备控制等功能。功能。 1.5.1 数据库管理系统的基本功
39、能数据库管理系统的基本功能 数据库的描述数据库的描述 数据库的管理数据库的管理 数据库的建立和维护数据库的建立和维护 数据通讯数据通讯 其他功能其他功能 系统运行控制程序:系统运行控制程序:系统监控程序、数据存取程系统监控程序、数据存取程序、存取控制程序、并发控制程序、完整性控制程序、存取控制程序、并发控制程序、完整性控制程序、通信控制程序、数据更新程序序、通信控制程序、数据更新程序 语言处理程序:语言处理程序:模式数据描述语言翻译程序、子模式数据描述语言翻译程序、子模式数据描述语言翻译程序、数据操纵语言处理程模式数据描述语言翻译程序、数据操纵语言处理程序、终端命令解释程序、数据库控制命令解释
40、程序序、终端命令解释程序、数据库控制命令解释程序 数据库管理例行程序:数据库管理例行程序:数据装入程序、重组程数据装入程序、重组程序、恢复程序、性能检测程序、工作日志程序序、恢复程序、性能检测程序、工作日志程序选择数据库管理系统的一般原则:选择数据库管理系统的一般原则:稳定可靠稳定可靠(High-Availability)可扩展可扩展(High-Scalability)安全性安全性(Security):数据库的安全性是指保护:数据库的安全性是指保护数据库以防止不合法的使用造成的数据泄露、数据库以防止不合法的使用造成的数据泄露、更改或破坏。数据库的安全控制主要通过用更改或破坏。数据库的安全控制主
41、要通过用户标识与鉴别、存取控制、视图机制、审计、户标识与鉴别、存取控制、视图机制、审计、数据加密等机制完成。数据加密等机制完成。丰富的开发工具:统一的技术支持。丰富的开发工具:统一的技术支持。服务质量:各数据库产品在质量方面的差距服务质量:各数据库产品在质量方面的差距逐渐缩小,而数据库厂家的服务质量的好坏逐渐缩小,而数据库厂家的服务质量的好坏将直接影响到企业信息化建设的工作。将直接影响到企业信息化建设的工作。 UNIFY INGRES ORACLE INFORMIX DB2 SYBASE FOXPRO SQL Server MySQL信息和数据:数字、字符、表格、图形、图像、信息和数据:数字、
42、字符、表格、图形、图像、声音、动画。声音、动画。数据结构:就是指数据之间的组织结构关系。数据结构:就是指数据之间的组织结构关系。例如:给定三个点的坐标,计算机可以将它们连例如:给定三个点的坐标,计算机可以将它们连成一个三角形,也可以过这三个点作一个圆或成一个三角形,也可以过这三个点作一个圆或画一段圆弧。只有当点的坐标和绘图关系确定画一段圆弧。只有当点的坐标和绘图关系确定之后,计算机才能画出我们所希望的图形。之后,计算机才能画出我们所希望的图形。因此,数据及其关系在计算机中的表达,是影响因此,数据及其关系在计算机中的表达,是影响应用软件成败及效率高低的关键。应用软件成败及效率高低的关键。由低到高
43、可分为:由低到高可分为:数据项数据项记录记录文件文件数据库数据库数据库系统数据库系统属性属性图号图号模数模数齿数齿数 齿宽齿宽材料材料热处理热处理硬度硬度记录记录 1BMW01-011.5485445调质调质210HBS记录记录 2BMW01-022674620Cr渗碳渗碳淬火淬火58HRC记录记录 3BMW02-012.5246035SiMn调质调质230HBS记录记录 4BMW02-023177240Cr调质调质230HBS记录记录 5BMW03-014113100ZG35SiMn正火正火180HBS齿轮零件信息表齿轮零件信息表 (1)数据的逻辑结构。分为两种:数据的逻辑结构。分为两种:线
44、性结构线性结构非线性结构(构造型的数据结构:树状结非线性结构(构造型的数据结构:树状结构和网状结构构和网状结构 )。)。 (2)数据的物理结构。分为两种:数据的物理结构。分为两种:顺序存储结构顺序存储结构链式存储结构链式存储结构 线性结构线性结构(线性表线性表): ),(11321niiiaaaaaaa数据域数据域(data)指针域指针域(point)链式存储结构:链式存储结构: char file1200,file2200;typedef struct rec KeyType key; /*关键字域关键字域*/ float load; /*数据域数据域*/ elemnodeMAXITEM;
45、struct / read in from nodeall.txt float linenum; long node; float x; float y; float z; nodecoord;工程数据包括大量种类繁多、结构复杂的信息。工程数据包括大量种类繁多、结构复杂的信息。有静态的,也有动态的;有结构化的,也有非结有静态的,也有动态的;有结构化的,也有非结构化的。如设计数据、绘图数据、材料数据、设构化的。如设计数据、绘图数据、材料数据、设备数据、工艺数据、测试数据、设计手册、标准备数据、工艺数据、测试数据、设计手册、标准规范、技术文档等等。这些数据是大多是动态变规范、技术文档等等。这些数据
46、是大多是动态变化的,并且贯穿产品的整个设计过程、甚至产品化的,并且贯穿产品的整个设计过程、甚至产品的整个寿命周期。的整个寿命周期。经历了人工管理、文件系统管理及数据库管理三经历了人工管理、文件系统管理及数据库管理三个阶段。个阶段。 关系数据库无法处理的复杂数据类型:关系数据库无法处理的复杂数据类型:存储并检索复杂的嵌套数据(如材料单存储并检索复杂的嵌套数据(如材料单BOM表)表)复合数据(如集合、数组、结构)复合数据(如集合、数组、结构)多媒体数据(如图像、语音、文本)多媒体数据(如图像、语音、文本)网络数据(如电子邮件、电子文档、网站的各网络数据(如电子邮件、电子文档、网站的各种元素)种元素
47、)用计算机辅助设计用计算机辅助设计CAD绘制的工程图纸绘制的工程图纸用用GIS(地理信息系统)提供的空间数据等(地理信息系统)提供的空间数据等 关系数据库都无法实现对它们的管理,正是实关系数据库都无法实现对它们的管理,正是实际中涌现出这样许多的问题,促使数据库系统技术际中涌现出这样许多的问题,促使数据库系统技术不断推向新的高度。不断推向新的高度。数据库数据库数据库管理系统数据库管理系统应用程序应用程序分布式数据库系统分布式数据库系统多媒体数据库多媒体数据库工程数据库工程数据库比较项目比较项目工程数据库工程数据库一般数据库一般数据库被处理的对象被处理的对象设计对象的数据是高度动态的,因为有些数据
48、预先无法设计对象的数据是高度动态的,因为有些数据预先无法了解,只能在设计过程中才能确认。更改工程数据了解,只能在设计过程中才能确认。更改工程数据库时,不但需更改数据值,而且还可能更改库的结库时,不但需更改数据值,而且还可能更改库的结构。构。事务处理的对象是静态的,因此在库的事务处理的对象是静态的,因此在库的设计阶段就能准确地进行描述,并设计阶段就能准确地进行描述,并在建库时把有关数据装入库中,数在建库时把有关数据装入库中,数据库的更改只涉及到值的改动。据库的更改只涉及到值的改动。数据库模型化数据库模型化的复杂性的复杂性涉及很多实体及其联系,而且往往是多对多、多层次、涉及很多实体及其联系,而且往
49、往是多对多、多层次、且层次不定的结构,也就是说是一个复杂的网状结且层次不定的结构,也就是说是一个复杂的网状结构。构。虽然包含许多实体,但绝大多数情况下,虽然包含许多实体,但绝大多数情况下,其间的联系是微弱的。其间的联系是微弱的。信息来源和用信息来源和用途途信息来源于外部输入和计算过程中频繁存取和改变数据信息来源于外部输入和计算过程中频繁存取和改变数据得出的结果,主要用来验证和修改设计,最后产生得出的结果,主要用来验证和修改设计,最后产生详细的设计数据。详细的设计数据。数据来源只有外部输入,主要用于检索数据来源只有外部输入,主要用于检索和统计、生成报表等,以达到管理和统计、生成报表等,以达到管理
50、的目的。的目的。库的装载方式库的装载方式数据大多数是通过计算生成的、或是人机交互的结果,数据大多数是通过计算生成的、或是人机交互的结果,故设计人员无法提供数据库模式所需要的数据。装故设计人员无法提供数据库模式所需要的数据。装载一般是由程序生成并批量装入。载一般是由程序生成并批量装入。由人工录入数据。由人工录入数据。修改所引起的修改所引起的问题问题在机械在机械CAD系统中,当数据库发生改动时,各应用程系统中,当数据库发生改动时,各应用程序会出现复杂的同步协调的问题。序会出现复杂的同步协调的问题。不会产生这样复杂的问题。不会产生这样复杂的问题。谁执行修改谁执行修改允许设计者更改数据值及数据结构,这