第1章 数据库系统绪论
以下图片来自西安交通大学侯迪老师的ppt,仅供学习和复习使用,请勿转载或他用
1.1 数据库系统概述
1.1.1 数据库的4个基本概念
数据(Data)
数据是数据库中存储的基本对象
描述事物的符号记录称为数据
数据库(DataBase,DB)
数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享
数据库管理系统(DataBase Management System,DBMS)
数据库管理系统与操作系统一样,都是计算机的基础软件。
其主要功能包括:
数据定义功能:数据定义语言 (Data Definition language, DDL)
数据组织、存储和管理
数据操纵功能:数据操纵语言 DML(Data Manipulation Language,DML)
数据库的事务管理和运行管理
数据库的建立和维护
数据库系统(DataBase System,DBS)
数据库系统是由数据库、数据库管理系统、应用程序和数据库管理员(DataBase Administrator, DBA)组成的存储、管理、处理和维护数据的系统
1.1.2 数据管理技术的产生和发展
人工管理阶段
20世纪50年代中期以前,计算机主要用于科学计算,无直接存储设备,无操作系统,处理方式:批处理
主要有以下特点:
数据不保存
应用程序管理数据
数据不共享
数据不具有独立性
文件系统阶段
20世纪50年代后期到60年代中期,数据需要长期保存在外存上反复进行查询、修改、插入和删除等操作
主要有以下特点:
数据可以长期保存
由文件系统管理数据
数据共享性差,冗余大(虽然有文件系统,但是文件还是对应于一个应用程序的)
数据独立性差(数据逻辑结构改变时要改变应用程序)
数据库系统阶段
20世纪60年代后期以来,出现了统一管理数据的软件系统——数据库管理系统
1.2 数据模型
数据模型是对现实世界数据特征的抽象
数据模型的组成要素:
数据结构:数据库的组成对象和他们之间的关系
数据操作
数据的完整性约束
1.2.1 两类数据模型(或者说三类,概念、逻辑、物理)
1.概念模型:用在数据库设计
E-R模型:Entity-Relationship即实体-关系模型
其中的概念有:实体、属性、码、联系(后面具体讨论)
联系分为三类:
1:1
如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1
1:n
如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n
m:n
如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n
2.逻辑和物理模型
逻辑模型:包括层次模型(树)、网状模型(图)、关系模型(表),其中前两种了解即可。
关系模型:
关系:一个关系对应通常说的一张表(Table)
元组:表中的一行(Row)即为一个元组
属性:表中的一列即为一个属性,给每一个属性起一个名称即属性名
主码:表中的某个属性组,它可以唯一确定一个元组
域:属性的取值范围
分量:元组中的一个属性值
关系模式:对关系的描述,相当于“表头”部分,例:学生(学号,姓名,年龄,性别,系,年级)
注:最基本的规范条件:关系的每一个分量必须是一个不可分的数据项, 不允许“表中套表”
1.2.2 数据模型的三要素
数据结构
数据操作
完整性约束
1.3 数据模式
模式(Schema)是数据库中全体数据的结构和特征的描述,它仅仅涉及类型的描述,不涉及具体的值。
1.3.1 数据库系统的分层抽象
1.3.2 数据(视图)与模式
模式:对数据库中数据所进行的一种结构性的描述所观察到数据的结构信息
视图:某一种表现形式下表现出来的数据库中的数据
1.3.3 三级模式、两层映像
三级模式:外模式、模式(逻辑模式)、内模式
外模式:用户模式,用户可见的
关键
逻辑模式(模式schema):中间层,从全局角度理解/管理的数据的结构描述, 含相应的关联约束体现在数据之间的内在本质联系内模式:一个数据库只有一个,是物理结构和存储方式的描述
模式其实就是一个数据库的结构描述,比如
学生(....)
,课程(....)
,选修(....)
这三个表的结构,一起构成了模式。模式描述的是全局逻辑结构,外模式描述的是数据的局部逻辑结构(给用户看的那一部分的外视图),一个模式可以包括多个外模式。
概念模式向外模式映射,就是给用户看到用户关心的数据,而不需要看到全部的数据。当模式改变时,如增加字段,可以改变E-C映射,使得外视图不变。
内模式和模式都只有一个,C-I映射是唯一的。内模式就是如何存储数据,当内模式(存储结构)改变时,可以改变C-I映射来使得概念模式不变。
两层映像:E-C Mapping、C-I Mapping,分别对应逻辑独立性与物理独立性。
E-C Mapping:将外模式映射为概念模式,从而支持实现数据概念视图向外部视图的转换,便于用户观察和使用
C-I Mapping:将概念模式映射为内模式,从而支持实现数据概念视图向内部视图的转换,便于计算机进行存储和处理
1.4 数据库管理系统
从用户层面看:
数据库语言:使用者通过数据库语言利用DBMS操作数据库
分为:
数据定义语言(DDL:Data Definition Language) ----DBMS提供给用户,以便用户定义数据格式
数据操纵语言(DML:Data Manipulation Language) ----DBMS提供给用户,以便用户对数据进行操作
数据控制语言(DCL:Data Control Language) ----DBMS提供给用户,以便用户对数据进行控制
从系统层面看:
“形式->构造->自动化”--数据库管理系统的实现
第1章 数据库系统绪论相关推荐
- sql语言管理中计算机系统,00051管理系统中计算机应用第四章数据库系统考纲
第四章数据库系统考纲 一.数据库系统概述 识记: 1.数据模型:对现实世界事物特征的模拟和抽象就是这个事物的模型.在数据库中数据模 型是抽象的表示和处理现实世界中数据的工具. 首先按人们的认识观点将现 ...
- 第一章数据库系统基础
第一章数据库系统基础 一.数据库:存储数据的仓库 二.数据库能够做什么: 1.存储大量的数据,方便检索和访问. 2.保持数据的信息一致.完整 3.共享和安全 4.通过组合分析,产生新的有用信息. 三. ...
- 信安教程第二版-第20章数据库系统安全
第20章 数据库系统安全 20.1 数据库安全概况 428 20.1.1 数据库安全概念 428 20.1.2 数据库安全威胁 428 20.1.3 数据库安全隐患 429 20.1.4 数据库安全需 ...
- 【软考软件评测师】第三十三章 数据库系统应用
[软考软件评测师]第三十三章 数据库系统应用 [软考软件评测师]第三十三章 数据库系统应用 [软考软件评测师]第三十三章 数据库系统应用 第一部分 知识点集锦 1.关系数据库候选码 2.自然连接 3. ...
- 《数据结构(C语言版)》严巍敏课件~第一章:绪论
<数据结构(C语言版)>严巍敏课件-第一章:绪论
- 大话数据结构读书笔记艾提拉总结 查找算法 和排序算法比较好 第1章数据结构绪论 1 第2章算法 17 第3章线性表 41 第4章栈与队列 87 第5章串 123 第6章树 149 第7章图 21
大话数据结构读书笔记艾提拉总结 查找算法 和排序算法比较好 第1章数据结构绪论 1 第2章算法 17 第3章线性表 41 第4章栈与队列 87 第5章串 123 第6章树 149 第7章图 211 第 ...
- TensorFlow 2.0深度学习算法实战 第一章 人工智能绪论
第一章 人工智能绪论 1.1 人工智能 1.1.1 人工智能 1.1.2 机器学习 1.1.3 神经网络与深度学习 1.2 神经网络发展简史 1.2.1 浅层神经网络 1.2.2 深度学习 1.3 深 ...
- 数据结构笔记(王道考研) 第一章:绪论
大部分内容基于中国大学MOOC的2021考研数据结构课程所做的笔记,该课属于付费课程(不过盗版网盘资源也不难找...).后续又根据23年考研的大纲对内容做了一些调整,将二叉排序树和平衡二叉树的内容挪到 ...
- 第1章 数据库系统与SQL基础知识!什么是SQL数据库系统?SQL类型?
第1章 数据库系统与SQL基础知识 1.1 数据库系统基本概念 数据库和SQL构成了整个数据库系统,两者一个是用来存储数据,一个是用来读取数据.本节通过简单的概念入手,让读者对数据库系统有个大概的 ...
最新文章
- vs2015开发python_VS2015 编写C++ DLL库及C++、 C#、python 调用
- 《大红包》电影观后感
- SAP ABAP实用技巧介绍系列之 ABAP XSLT 使用attribute增加新的属性
- 将用户添加到sudoers里面,使用户拥有sudo权限
- 通过Spring Integration和RabbitMQ获得高可用性的AMQP支持的消息通道
- Google推出了Python最牛逼的编辑器,不看后悔一辈子!
- 易语言不用oracle客户端_大叔学中文编程之易语言02
- 使用Javascript / jQuery下载文件
- unix, PF_UNIX, AF_UNIX, PF_LOCAL, AF_LOCAL - 用于本地内部进程通讯的套接字。
- 怎么缩小界面_PDF怎么压缩变小?介绍实用的PDF压缩软件
- C#代码混淆加壳利器ConfuserEx的使用
- 易语言调用大漠把血蓝内力体力转化为进度条
- a113 智能音箱芯片方案_主流智能音箱全拆解,内部分毫必见
- 利用Excel饼图画出八等份圆
- 汉诺塔(the Tower of Hanoi )
- 在eclipse上运行html文件
- tzc 1345 推箱子
- 堆和栈的区别(内存和数据结构)
- [oh-my-zsh] 提示检测到不安全的完成相关目录的问题解决
- windowsXP服务详解