数据库基础知识
一、数据库基础知识
(一)计算机数据管理的发展
1.数据与数据处理
数据是指存储在某一种媒体上能够识别的物理符号。数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式,数据形式可以是多种多样的。
信息:一种已经被加工为特定形式的数据。对人们而言是可理解、可用于指导决策的数据
数据处理是指将数据转换成信息的过程。从数据处理的角度而言,信息是一种被加工成特定形式的数据,这种数据形式对于数据接收者来说是有意义的。
三者之间的关系:
▪ 数据是信息的载体和具体表现形式
▪ 信息不随着数据形式的变化而变化
▪ 信息=数据+数据处理
2.计算机数据管理
数据处理的中心问题是数据管理。计算机对数据的管理是指对数据的组织、分类、编码、存储、检索和维护提供操作手段。
计算机在数据管理方面也经历了由低级到高级的发展过程。计算机数据管理随着计算机硬件、软件技术和计算机应用范围的发展而不断发展,多年来经历了以下几个阶段:人工管理阶段、文件系统阶段、数据库系统阶段、分布式数据库系统阶段和面向对象数据库系统阶段。
1、人工管理阶段
(1)这一阶段是指20世纪50年代中期以前,计算机主要用于科学计算,当时
的计算机硬件状况是:外存只有磁带、卡片、纸带,没有磁盘等直接存取的存
储设备;软件状况是:没有操作系统,没有管理数据的软件,数据处理方式是
批处理。
(2)人工管理阶段的特点是:数据不保存、数据无专门软件进行管理(数据冗
余)、数据不共享、数据不具有独立性、数据无结构。
2、文件系统阶段
(1)这一阶段从20世纪50年代后期到60年代中期,计算机硬件和软件都有
了一定的发展。计算机不仅用于科学计算,还大量用于管理。这时硬件方面已
经有了磁盘、磁鼓等直接存取的存储设备。在软件方面,操作系统中已经有了
数据管理软件,一般称为文件系统。处理方式上不仅有了文件批处理,而且能
够联机实时处理。
(2)文件系统阶段的特点:数据管理由文件管理系统完成;数据共享性差、
冗余度大;数据独立性差;数据可长期保存。
3、数据库系统阶段
(1)20世纪60年代末数据管理进入新时代——数据库系统阶段。数据库系统
阶段出现了统一管理数据的专门软件系统,即数据库管理系统。数据库系统是
一种较完善的高级数据管理方式,也是当今数据管理的主要方式,获得了广泛
的应用。
(2)数据库系统阶段的特点:数据结构化;数据共享程度高;数据独立性强;
数据冗余度小;加强对数据的保护
4、分布式数据库系统阶段:
(1)分布式数据库系统是由若干个站集合而成。这些站又称为节点,它们在通
讯网络中联接在一起,每个节点都是一个独立的数据库系统,它们都拥有各自
的数据库、中央处理机、终端,以及各自的局部数据库管理系统。因此分布式
数据库系统可以看作是一系列集中式数据库系统的联合。
(2)它们在逻辑上属于同一系统,但在物理结构上是分布式的。
5、面向对象数据库系统阶段:
(1)面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)
是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到
子程序作用的单元或对象组合而成。
(2)OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。
(3)面向对象数据库吸收了面向对象程序设计方法的核心概念和基本思想,采
用面向对象的观点来描述现实世界实体(对象)的逻辑组织、对象之间的限制
和联系等。
(二)数据库系统
1.有关数据库的概念
①数据库:数据库(DataBase)是存放数据的仓库。是长期存放在计
算机内,有组织的、大量的、可共享的数据集合。它不仅包括描述
事物的数据本身,而且还包括相关事物之间的联系。
②数据库应用系统:数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。
③数据库管理系统:数据库管理系统(DBMS)是位于用户与操作系
统(OS)之间的数据管理软件,是数据库系统的核心软件。其主要
功能包括以下几个方面:Aceess,VsiualFoxPro,sql server,db2,oracle (1)数据定义;
(2)数据操纵;
(3)数据库的运行管理;
(4)数据的组织、存储和管理;
(5)数据库的建立和维护;
(6)数据通信接口。
④数据库系统:(DBS)数据库系统是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。
数据库系统由五部分组成:硬件系统、数据库、数据库管理系统及相关软件、数据库管理员( DBA)和用户。
2.数据库系统的特点
数据库系统的主要特点如下:①实现数据共享,减少数据冗余②采用特定的数据模型③具有较高的数据独立性④有统一的数据控制功能(三)数据模型
模型是现实世界特征的模拟和抽象。要将现实世界转变为机器能够识别的形式,必须经过
两次抽象,即使用某种概念模型为客观事物建立概念级的模型,将现实世界抽象为信息世界,然后再把概念模型转变为计算机上某一DBMS支持的数据模型,将信息世界转变为机器世界。
1.实体的描述
①实体:客观存在并且可以相互区别的事物称为实体。②实体的属性:描述实体的某一特性。③实体集和实体型:属性值的集合表示一个实体,而属性的集合表示一种实体的类型,称为实体型。同类型的实体的集合,称为实体集。
在Access中,用“表”来存放同一类实体,即实体集。
2.实体间联系及联系的种类
实体之间对应关系称为联系,这反映现实世界事物之间的相互关联。
实体间联系的种类是指一个实体型中可能出现的每一个实体与另一个实体型中一个或多个具体实体存在联系。两个实体间的联系可以归结为三种类型:①一对一联系②一对多联系③多对多联系
3.数据模型简介
数据模型是数据库管理系统用来表示实体及实体间联系的方法。
一个具体的数据模型应当能正确地反映出数据之间存在的整体逻辑关系。
任何一个数据库管理系统都是基于某种数据模型的。数据库管理系统所支持的数据模型分为三种:层次模型、网状模型、关系模型。因此,使用支持某种特定数据模型的数据库管理系统开发出来的应用系统相应称为层次数据库系统、网状数据库系统和关系数据库系统。
层次模型是数据库系统中最早出现的数据模型它用树形结构表示各实体以及实体间的
联系。若用图来表示,层次模型是一棵倒立的树。在数据库中,满足以下条件的数据模型称为层次模型:① 有且仅有一个结点无父结点,这个结点称为根结点;② 其他结点有且仅有一个父结点。
在现实世界中,事物之间的联系更多的是非层次关系的,用层次模型表示非树型结构是
很不直接的,网状模型则可以克服这一弊病。网状模型是一个网络。在数据库中,满足以下两个条件的数据模型称为网状模型。① 允许一个以上的结点无父结点;② 一个结点可以有多于一个的父结点。
二、关系数据库
(一)关系模型
一个关系的逻辑结构就是一张二维表。这种用二维表的形式表示实体和实体间联系的数据模型称为关系模型。
从模型的三要素角度看,关系模型的内容为:1、数据结构:一张二维表格。2、数据操作:数据表的定义,检索、维护、计算等。3、数据约束条件:表中列的取值范围即域值的限制条件。
1.关系术语
在Access中,一个“表”就是一个关系。
①关系:一个关系就是一张二维表,每个关系有一个关系名。在Access 中,一个关系存储为一个数据表,具有一个表名。
对关系的描述称为关系模式,一个关系模式对应一个关系的结构。其格式为: 关系名(属性名1,属性名2,...,属性名n)
在Access中表示为表结构:
表名(字段名1,字段名2,...,字段名n)
②元组:在一个二维表(一个具体关系)中,水平方向的行称为元组,每一行是一个元组。元组对应存储文件中的一个具体记录,元组的各分量分别对应于关系的各个属性。
③属性:二维表中垂直方向的列称为属性,每一列有一个属性名,在Access中表示为字段名。每个字段的数据类型、宽度等在创建表的结构时规定。
④域:属性的取值范围,一个属性的取值所限定的范围
⑤关键字:属性或属性的组合,其值能够唯一地标识一个元组
⑥外部关键字:如果表中的一个字段不是本表的主关键字或候选关键字,而是另外一个表的主关键字或候选关键字,这个字段(属性)就称为外部关键字
⑦候选码:表中的某一个属性,它的值可以唯一地标志一个元组。一个表中可能有多个候选码,选择一个作为主键。
2.关系的特点
①关系必须规范化,最基本的要求是每个属性必须是不可分割的数据单元,即表中不能再包含表。
课程编码课程名称课程分类学分
授课情况
部门教师
001SQL Server 实用技术信息技术3计算机系张兰
002计算机文化基础信息技术2计算机系张兰
②在同一个关系中不能出现相同的属性名,Access不允许同一个表中有相同的字段名
③关系中不允许有完全相同的元组,即冗余
④在一个关系中元组的次序无关紧要。
⑤在一个关系中列的次序无关紧要。
(二)关系运算
1.传统的集合运算
进行并、差、交集合运算的两个关系必须具有相同的关系模式,即相同结构
1).并:设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为∪。
2.差:设有两个关系R和S,它们具有相同的结构。R和S的差是由属于R但不属于S的元组组成的集合。运算符为-。
于R又属于S的元组组成的集合,运算符为∩。
4. 笛卡尔积
根据笛卡尔积的定义:有n元关系R及m元关系S,它们分别有p、q个元组,则关系R与S经笛卡尔积记为R×S,元组个数是p×q,由R与S的有序组组合而成。
2.专门的关系运算
①选择:从关系中找出满足给定条件的元组的操作。
②投影: 从关系模式中指定若干属性组成新的关系。
③联接: 将两个关系模式拼接成一个更宽的关系模式,生成的新的关系中包含满足联接条件的元组。有两种形式:等值连接,自然连接。
▪ 等值连接(R|×|S(A=B)):从R和S的笛卡尔积中选择A,B属性值
相等的元组。注: A、B是属性集合
▪ 自然联接: 在联接运算中,按照字段值对应相等为条件进行的联接操作,并去掉重复字段。
三、数据库设计基础
(一)数据库设计步骤
1.设计原则
为了合理组织数据,应遵从以下基本设计原则:
①关系数据库的设计应遵从概念单一化“一事一地”的原则
②避免在表之间出现重复字段
③表中的字段必须是原始数据和基本数据元素
④用外部关键字保证有关联的表之间的联系
2.数据库设计的步骤:需求分析 → 确定所需要的表 → 确定所需字段→ 确定联系 → 设计求精
3. 数据库设计的6个阶段
需求分析:要准确了解并分析用户对系统的需求,弄清系统
要
达到的目标和实现的功能。调查的重点是“数据”和“处理”。数据流图、数据字典是进行详细的数据收集和数据分析所获得的主要结果。
概念设计:概念结构设计阶段是整个数据库设计的关键。其
目
标是产生一个反映信息需求的、独立于具体DBMS的概念模型。概念模型可以用实体联系模型(E-R模型)表示。
逻辑结构设:将概念结构转换为某个DBMS支持的数据模
型,
并将其性能进行优化。从E-R图向关系模式的转换(表、及其联系);逻辑模式规范化及调整、实现;关系视图设计。
物理设计:数据库逻辑结构在存储设备上的实现。如对数据
库
怎样组织存储才能使得逻辑级的操作方便、快捷等。物理设计只有少量工作可以由用户选择和干预,绝大部分工作由DBMS完成。
应用程序设计:系统设计人员要运用DBMS提供的数据操作
语
言和宿主语言,根据数据库的逻辑设计和物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行系统试运行。
数据库运行与维护:数据库系统运行过程中,必须不断地对
其
结构性能进行评价、调整和修改、故障恢复及数据监控等。