数据库系统原理及应用 第一章 绪论

一、数据库系统概述

1、数据

定义:描述事物的符号记录。

种类:数字、文字、图形、图像、音频、视频等。

特点:数据与语义不可分。
举例:学生档案中的学生记录 (李明,男,1972,江苏,计算机系,1990) 语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间

2、数据库

定义:长期储存在计算机内、有组织的、可共享的大量数据集合。

3、数据库管理系统

定义:位于用户与操作系统之间的数据管理软件。
主要功能:

  1. 数据定义功能:提供数据定义语言(DDL),定义数据库中的数据对象;
  2. 数据组织、存储和管理:文件结构,存取方式来组织数据,实现数据间的联系;
  3. 数据操纵功能:提供数据操纵语言(DML);查询、插入、删除和修改;
  4. 数据库的事务管理和运行管理:数据库在建立、运行和维护时由数据库管理系统统一管理和控制; 保证数据的安全性、完整性、多用户对数据的并发使用; 发生故障后的系统恢复。
  5. 数据库的建立和维护功能:数据库数据批量装载;数据库转储、介质故障恢复;数据库的重组织;性能监视、分析;
  6. 其他功能:与其他软件的通信;不同DBMS的数据转换;异构数据库的互访;

4、数据库系统

数据库系统的构成:由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)

5、发展经历

(1)人工管理阶段

  • 软硬件:没有磁盘,没有操作系统

  • 特点:数据不保存;应用程序管理数据;数据不共享;数据不具有独立性
    (2)文件系统阶段

  • 软硬件:有磁盘,磁鼓,操作系统(其中文件系统管理数据)

  • 特点:数据可以长期保存;有文件系统管理数据

  • 缺点: 数据共享性差 冗余度大 数据独立性差
    (3)数据库系统阶段

  • 软硬件:应用更广(联机,分布,共享),大容量磁盘,数据库管理系统

  • 特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据由DBMS统一管理和控制

二、概念模型

1、数据模型

(1)定义:对现实世界数据特征的抽象。(对现实中的数据进行设立模型,根据模型建立数据库)

(2)两类数据模型:逻辑模型,物理模型

2、信息世界中的基本概念

(1) 实体(Entity):相互区别的事物,例:一个职工、一个学生。

(2) 属性(Attribute) :实体的特性,例:学生实体可以由学号、姓名、性别、出生年月等属性组成。

(3) 码(Key) :唯一标识实体的属性集,例:学号是学生实体的码

(4) 域(Domain) :属性的取值范围,例:学生年龄的域为整数

(5) 实体型(Entity Type) :用实体名,属性名抽象同类实体,例:将张三和李四这种统一拥有相同属性的实体抽象为实体型

(6) 实体集(Entity Set) :同型实体的集合

(7) 联系(Relationship):实体(型)内部的联系和实体(型)之间的联系。实体之间的联系有一对一、一对多和多对多等多种类型

(用E-R图来描述现实世界的概念模型)

3、数据模型的组成要素

(1)数据结构:数据库的组成对象以及对象之间的联系。

(2)数据操作:对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则。(查询,插入,删除,修改)

(3)数据的完整性约束条件:一组完整性规则的集合。数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,保证数据的正确、有效、相容。

4、常用的数据模型

  • 层次模型(Hierarchical Model)
  • 网状模型(Network Model)
  • 关系模型(Relational Model))
  • 面向对象数据模型(Object Oriented Data Model)
  • 对象关系数据模型(Object Relational Data Model)
  • 半结构化数据模型(Semistruture Data Model)

三、关系数据模型

1、关系数据模型的数据结构

(1)关系:一个关系对应通常说的一张表

(2)元组:表中的一行即为一个元组

(3)属性:表中的一列即为一个属性

(4)主码:表中的某个属性组,唯一确定一个元组

(5)域:属性的取值范围

(6)分量:元组中的一个属性值

(7)关系模式:对关系的描述:

关系名(属性1,属性2,...,属性n) 例:学生(学号,姓名,年龄,性别,系,年级)

例:86051为一个分量,陈平为一个分量

2、关系数据模型的操纵和完整性约束

(1)关系数据模型的操纵主要包括:查询,插入,删除,更新数据,这些操作必须满足关系的完整性约束条件

(2)关系的完整性约束条件:实体完整性、参照完整性、用户定义的完整性

3、关系数据模型的优缺点

优点:(1)建立在严格的数学概念的基础上。

(2)概念单一,数据结构简单、清晰,用户易懂易用。 实体和各类联系都用关系来表示。 对数据的检索结果也是关系。

(3)关系模型的存取路径对用户透明。 具有更高的数据独立性,更好的安全保密性。 简化了程序员的工作和数据库开发建立的工作。

缺点:存取路径对用户透明导致查询效率往往不如非关系数据模型。 为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度。

四、数据库系统的结构

  • 三级模式是对数据的三个抽象级别。
  • 二级映像在DBMS内部实现这三个抽象层次的联系和转换。

1、数据库系统的三级模式结构

(1)模式:

模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图;设计数据库模式结构时应首先定义数据库逻辑模式。
(2)外模式(子模式或用户模式):

是数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述;是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

(外模式是保证数据库安全性的一个有力措施,每一个用户只能看见和访问所对应的外模式中的数据,数据库的其余数据是不可见的)
(3)内模式(存储模式):

是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
一个数据库只有一个模式,一个内模式,但可以有多个外模式;一个应用程序只能使用一个外模式;
外模式就是应用模式,是用来在现实中应用的;模式就是概念模式,也就是一个个二维表;内模式是物理模式,是指数据到底是怎么存、存在硬盘哪的。

2、数据库的二级映像功能与数据独立性

(1)外模式/模式映像(保证了数据(与程序)的逻辑独立性)

  • 定义外模式与模式之间的对应关系

  • 每一个外模式都对应一个外模式/模式映像

  • 映像定义通常包含在各自外模式的描述中
    当模式改变(如增加新关系、属性、改变类型)时,数据库管理员重新定义外模式/模式映象----------现存外模式不变-------应用程序不变 。
    (2)模式/内模式映像(保证数据的物理独立性)

  • 模式/内模式映像定义了数据全局逻辑结构与存储结构之间的对应关系。

  • 数据库中模式/内模式映像是唯一的。

  • 该映像定义通常包含在模式描述中。
    当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员重新定义模式/内模式映像--------模式保持不变-------外模式保持不变-------建立在外模式上的应用程序保持不变。

五、数据库系统的组成

  • 数据库
  • 数据库管理系统(及其开发工具)
  • 应用系统
  • 数据库管理员(DBA):1,决定数据库中的信息内容和结构 2,决定数据库的存储结构和存取策略 3,定义数据的安全性要求和完整性约束条件 4,监控数据库的使用和运行 5,数据库的改进和重组重构
  • 用户
相关推荐
r***113343 分钟前
如何实现Redis安装与使用的详细教程
数据库·redis·缓存
翔云12345643 分钟前
MySQL中,binlog文件开头的Previous_gtids_log_event是如何计算的
数据库·mysql·adb
Alex Gram1 小时前
Mysql增量同步到PostgreSQL实战
数据库·mysql·postgresql
闲人编程1 小时前
Django缓存策略:Redis、Memcached与数据库缓存对比
数据库·redis·缓存·django·memcached·codecapsule
小二李1 小时前
第8章 Node框架实战篇 - 文件上传与管理
前端·javascript·数据库
z***67771 小时前
macOS安装Redis
数据库·redis·macos
YJlio1 小时前
[编程达人挑战赛] 用 PowerShell 写了一个“电脑一键初始化脚本”:从混乱到可复制的开发环境
数据库·人工智能·电脑
x***13391 小时前
MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
java·数据库·mysql
v***91301 小时前
PostgreSQL 中进行数据导入和导出
大数据·数据库·postgresql