本篇主要介绍一些数据库系统的基本概念和基础知识。此篇一共包括三章内容,边学边做笔记,方便自己加深记忆。有需要的朋友也可以看看。若发现错误欢迎指正!
目录
第1章:绪论
1.1、数据库系统概述
(1)数据库的四个基本概念:数据、数据库、数据库管理系统和数据库系统。
①数据:描述事物的符号记录。数据的含义称为数据的语义,数据与其语义是不可分的。
②数据库:概括地讲,数据库数据具有永久存储、有组织和可共享的三个基本特点。
严格地讲:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、
描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
③数据库管理系统:是位于用户和操作系统之间的一层数据管理软件。和操作系统一样是计算机的基础软件。
主要功能:1、数据定义功能 2、数据组织、存储和管理 3、数据操纵功能 4、数据库的事务管理和运行管理
5、数据库的建立和维护功能 6、其他功能(通信功能,数据转换功能,互访和互操作功能等)
④数据库系统:是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。
(2)数据管理技术的产生和发展
1、人工管理阶段:数据不保存、不共享,不具有独立性。
2、文件系统阶段:可保存,但共享性差,冗余度大,独立性差。
3、数据库管理系统:从文件系统到数据库系统标志着管理技术的飞跃。
(3)数据库系统的特点
1、数据结构化:实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
所谓”整体“结构化是指数据库中的数据不再仅仅针对某一个应用,而是面向整个组织或企业:不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。
2、数据的共享性高、冗余度低且易扩充:数据共享可以大大减少数据冗余,节约存储空间。数据共享还能够避免数据之间的不相容性与不一致性。由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充。
3、数据独立性高:
物理独立性:是指用户的应用程序与数据库中数据的物理存储是相互独立的。
逻辑独立性:是指用户的应用程序与数据库的逻辑结构是相互独立的。
即:数据的物理存储或逻辑结构改变时,用户程序不变。
4、数据由数据库管理系统统一管理和控制
数据的安全性:是指保护数据以防止不合法使用造成的数据泄密和破坏。
数据的完整性:指数据的正确性、有效性和相容性。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段
1.2、数据模型
数据模型:也是一种模型,它是对现实世界数据特征的抽象,也就是说数据模型是用来描述数据、组织数据和对数据进行操作的。数据模型是数据库系统的核心和基础。
(1)两类数据模型:概念模型+逻辑模型和物理模型(人们首先将现实世界抽象为信息世界,然后将信息世界转还为机器世界)
1、概念模型:也称信息模型,它是按用户观点来对数据和信息建模,主要用于数据库设计。
信息世界的一些基本概念:
实体:客观存在并可相互区别的事物。
属性:实体所具有的某一特性。
码:唯一标识实体的属性。
实体型:用实体名及其属性集合来抽象和刻画同类实体。
实体集:同一类型实体的集合。
联系:实体之间的联系通常是指不同实体集之间的联系。实体之间的联系有一对一、一对多和多对多等多种联系。
概念模型的一种表示方法:实体-联系方法。用E-R图来描述现实世界的概念模型,E-R方法也称为E-R模型。
2.1、逻辑模型:它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现。
物理模型:是对数据最底层的抽象,它描述数据在系统内部的表示方法和存取方法,或在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。
2.2、数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成。
数据结构:描述数据库的组成对象以及对象之间的关系。
数据操作:是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合。包括操作及其有关的操作规则。
数据的完整性约束条件:是一组完整性规则。
2.3、常用的数据模型:层次模型,网状模型,关系模型,面向对象数据模型,对象关系数据模型,半结构化数据模型。
层次模型:1、有且只有一个结点没有双亲结点,这个结点称为根结点。
2、根以外的其他结点有且只有一个双亲结点。
数据操纵主要有:查询、插入、删除和更新。(增删改查)
插入:无相应的双亲结点值就不能插入它的子女结点值。
删除:若删双亲结点值,则相应的子女结点值也将同时被删除。
优点:数据结构比较简单清晰,层次的数据库的查询效率高,层次数据模型提供了良好的完整性支持。
缺点:部署和用于描述现实中很多联系,对于多双亲结点表示很笨拙,查询子女结点必须通过双亲结点,结构严密致层次命令区域程序化。
网状模型:典型代表是DBTG系统,亦称CODASYS系统。
条件:1、允许一个以上的结点无双亲。
2、一个结点可以有多于一个双亲。
层次模型中子女结点与双亲结点的联系是唯一的,而网状模型中这种联系可以不唯一。
支持记录码的概念+保证一个联系中双亲记录和子女记录之间是一对多的联系+可以支持双亲记录和子女记录之间的某些约束条件。
优点:描述现实世界更加直接,具有良好的性能且存取效率较高
缺点:结构比较复杂,用户不容易掌握和使用嵌入的高级语言,用户需了解系统结构的细节而加重了编写程序的负担。
关系模型:要求关系必须是规范化的!关系的每一个分量必须是一个不可分割的数据项。
术语:
关系:一个关系对应通常说的一张表。
元组:表中的一行。
属性:表中的一列。
码:也称码键,表中的某个属性组。
域:是一组具有相同数据类型的值的集合。
分量:元组中的一个属性。
关系模式:对关系的描述,一般表示为:关系名(属性1,属性2,...,属性n)
数据操作:增删查改
操作必须满足关系的完整性约束条件:实体完整性+参照完整性+用户定义的完整性。
操作对象和操作结果都是关系。
优点:建立在严格的数学概念的基础上,概念单一,更高的数据独立性和更好的安全保密性。
缺点:查询效率不如格式化数据模型+为了提高性能增加了开发数据库管理系统的难度。
1.3、数据库系统的结构
1、模式数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及具体的值。其一个具体值称为模式的一个实例。
模式是相对稳定的,实例是相对变动的。
三级模式结构:外模式+模式+内模式
模式:也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式:也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
内模式:也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
2、二级映像:
外模式/模式映像:当模式改变时,由数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变。应用程序不必修改。
保证了数据与程序的逻辑独立性。
模式/内模式映像:当数据库的存储结构改变时,有数据库管理员对模式/内模式作相应改变,