数据库系统概论笔记

Bertha ·
更新时间:2024-09-21
· 771 次阅读

文章目录数据库系统概论绪论关系数据库关系数据库标准语言SQL数据库安全性数据库完整性关系数据库理论数据库设计关系查询处理和查询优化数据库恢复技术并发控制 数据库系统概论 绪论

数据库DB

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

数据库管理系统DBMS

数据库管理系统是位于用户与操作系统之间的一层数据管理软件(计算机的基础软件)

(1)数据定义功能

(2)数据组织、存储和管理

(3)数据操纵功能

(4)数据库的事务管理和运行管理

(5)数据库的建立和维护功能

(6)其他功能

数据库系统

数据库系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。

数据库系统的特点

(1)数据结构化

数据库系统实现整体数据的结构化,这是数据库系统的主要特征之一,也是数据库系统与文件系统的本质区别。

(2)数据独立性高

数据独立性是由数据库管理系统提供的二级映像功能来保证的。

a.物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的。

b.逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的。

概念模型

(1)信息世界中的基本概念

a.实体

b.属性

c.码

d.实体型

e.实体集

f.联系

(2)概念模型的一种表示方法:实体-联系方法(E-R方法/E-R模型)

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

(1)模式

模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。

一个数据库只有一个模式。

(2)外模式

外模式也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

(3)内模式

内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构的存储方式的描述,是数据在数据库内部的组织方式。

数据库系统的二级映像功能与数据独立性

(1)外模式/模式映像

当模式改变时,由数据库管理员对各个外模式/模式的映像作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

(2)模式/内模式映像

当数据库的存储结构改变时,由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性。

关系数据库

关系

候选码、主码、主属性、非主属性(非码属性)

基本关系的六条性质:

(1)列是同质的

(2)不同列可出自同一个域,每一列为一个属性,不同属性(列)给不同属性名

(3)列的顺序可任意交换

(4)任意两个元组不能完全相同

(5)行的顺序可任意交换

(6)每一分量是不可分的数据项

关系模式:关系的描述R(U, D, dom, F),简记为R(U)或R(A1, A2, …, An)

关系操作

查询操作和插入、删除、修改操作两部分

关系的完整性

(1)实体完整性

(2)参照完整性

(3)用户定义的完整性

关系代数

(1)传统的集合运算(前三者都有n个属性且相应属性取自同一个域)

并(合并)

差(去除)

交(共同)

笛卡尔积(元组连接)

(2)专门的关系运算

选择(满足条件的行)

投影(列的组合)

连接(元组连接且满足条件θ)

a.等值连接(条件θ为相等)

b.自然连接(等值连接去除重复列,默认舍弃悬浮元组)

除(R÷S,R中公共属性在非公共属性上的象集包含了S中公共属性投影集合,R÷S结果为这些满足条件的非公共属性的元组集合)

关系数据库标准语言SQL

数据定义

对模式SCHEMA、基本表TABLE、视图VIEW、索引INDEX的创建CREATE、删除DROP和修改ALTER(9种组合,不能修改模式、视图和索引)(10种组合,不能修改模式和视图)

数据查询

单表查询

查询所有*

消除重复行DISTINCT,默认是全部行ALL

范围闭区间(NOT) BETWEEN AND

属性值的集合(NOT) IN

字符匹配LIKE+通配符(任意长度% 任意单个字符_)(+ 转义符ESCAPE)

空值IS (NOT) NULL

按属性列排序ORDER BY + 升序ASC(默认,空值最后)/降序DESC(空值最先)

元组个数COUNT(*) (遇到空值不影响)

某列中值的:个数COUNT(),总和SUM(),平均值AVG(),最大值MAX(),最小值MIN() (遇到空值跳过)

分组GROUP BY (+ HAVING)

连接查询

自身连接FIRST,SECOND

外连接LEFT/RIGHR/FULL OUTER JOIN ON()

嵌套查询

子查询结果属性值的集合(NOT) IN

子查询结果的某个值ANY

子查询结果的所有值ALL

返回查询结果(NOT) EXISTS

多层嵌套

原创文章 14获赞 10访问量 6822 关注 私信 展开阅读全文
作者:一只小杰鸽



数据 系统 数据库系统 数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号