暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

软考知识点梳理——数据库

1731

导航

软考知识点——数据库基本概念

软考知识点——数据模型

知识点

体系结构

  • 集中式数据库系统

  • 客户端/服务器结构

  • 并行数据库系统(共享内存式多处理器、无共享式并行体系结构)

  • 分布式数据库系统

分布式数据库系统

  • 共享性(数据共享)、自治性(对本地数据独立管理)、可用性(故障时使用副本)、分布性(优先使用本节点数据)

  • 分片透明性、位置透明性、局部数据模型透明性

模式结构

  • 概念模式(模式):全部数据的逻辑结构和特征的描述,对应基本表。

  • 外模式(用户模式):用户与数据库系统的接口,对应视图。

  • 内模式(存储模式):数据物理结构和存储方式的描述,对应存储文件。

  • 外模式/模式映像:外模式和概念模式之间的相互转换,数据的逻辑独立性。

  • 模式/内模式映像:概念模式和内模式之间的相互转换,数据的物理独立性。

数据库设计

  • 需求分析:调研组织机构、业务活动、明确需求、确定边界,形成需求说明文档、数据流图、数据字典

  • 概念设计:将现实事物抽象为实体、属性、关系,合并、优化E-R图

  • 逻辑设计:确定数据模型、将E-R转换为数据模型、确定完整性约束、用户视图

  • 物理设计:确定数据分布、数据存储结构、访问方式

  • 实施:建立实际的数据库结构、加载数据、试运行和评价

  • 维护:监测改善性能、备份故障恢复、重组重构

分E-R图之间冲突

  • 属性冲突(属性类型、范围、单位不同)

  • 命名冲突(属性名称不同)

  • 结构冲突(实体属性不同)

数据模型

  • 数据结构、数据操作、数据约束条件

  • 概念数据模型:实体-关系模型(E-R)

  • 基本数据模型:层次模型(树状结构)、网状模型、关系模型(表格结构)、面向对象模型

实体-关系模型

  • 实体:用矩形表示,具有一组属性

  • 关系:用菱形表示,具有联系类型(1:1、1:n、m:n)

  • 简单属性、复合属性

  • 单值属性、多值属性

  • NULL属性

  • 派生属性:可以从其他属性计算得来

关系

  • 度(degree):关系中的属性数

  • 候选码(candidate key):某一属性或属性组能唯一标识元组

  • 主码(primary key):选定一个候选码为主码

  • 主属性(non-key attribute):包含在某一候选码中的属性

  • 外码(foreign key):非本关系的码,是其他关系的码

  • 全码(all key):全体属性组是候选码

  • 基本关系(基本表)

  • 查询表(查询结果对应的表)

  • 视图表(由基本表或其他视图表得出的表)

完整性约束

  • 实体完整性:主属性不能取控制

  • 参照完整性:和其他实体之间的关系

  • 用户定义完整性:针对具体关系的约束条件

关系运算

  • 并(union):  

  • 交(intersection):  

  • 差(difference):  

  • 广义笛卡尔积(extended cartesian product):  

  • 投影(projection):  

  • 选择(selection):  

  • θ连接:  

  • 等值连接:当θ为“=”时的连接,  

  • 自然连接:对相同属性进行等值比较,并在结果集中去除重复属性  

  • 除(division):  

  • 广义投影(generalized projection):  

  • 左外连接(left outer join):取出左侧关系中所有与右侧关系中任一元组都不匹配的元组,用空值null填充所有来自右侧关系的属性。

  • 右外连接(right outer join):取出右侧关系中所有与左侧关系中任一元组都不匹配的元组,用空值null填充所有来自左侧关系的属性。

  • 全外连接(full outer join):完成左外连接和右外连接的操作。

SQL

  • 创建表:CREATE TABLE <表名>(<列名><数据类型>[列级完整性约束条件], ...[, <表级完整性约束条件>])

  • 修改表:ALTER TABLE <表名> [ADD <列名><数据类型>[完整性约束条件]] [DROP <列名/完整性约束名>] [MODIFY <列名><数据类型>]

  • 删除表:DROP TABLE <表名>

  • 创建索引:CREATE [UNIQUE] [CLUSTER] INDEX <索引名> on <表名>(<列名>[<次序>], ...)

  • 删除索引:DROP INDEX <索引名>

  • 创建视图:CREATE VIEW 视图名 AS SELECT查询子句 [WITH CHECK OPTION]

  • 查询:SELECT [ALL | DISTINCT] <目标列表达式>, ... FROM <表名或视图名> [WHERE <条件表达式>] [GROUP BY <列名> [HAVING <条件表达式>]] [ORDER BY <列名> [ASC | DESC]]
    (字符串通配符:_
    单字符,%
    多字符)

  • 插入:INSERT INTO <表名> [字段名, ...] VALUES(常量, ...)
    INSERT INTO <表名> SELECT查询子句

  • 删除:DELETE FROM <表名> [WHERE 条件表达式]

  • 修改:UPDATE <表名> SET <列名> = <值表达式>, ... [WHERE 条件表达式]

  • 授权:GRANT <权限/ALL PRIVILEGES>, ... [ON <对象类型:TABLE/DATABASE> <对象名>] TO <用户/PUBLIC>, ... [WITH GRANT OPTION]

  • 收回权限:REVOKE <权限/ALL PRIVILEGES>, ... [ON <对象类型:TABLE/DATABASE> <对象名>] FROM <用户/PUBLIC>

函数依赖

  • 函数依赖:  

  • 非平凡函数依赖:  

  • 平凡函数依赖:  

  • 完全函数依赖:  ,X的任一个真子集X'都不能决定Y

  • 部分函数依赖:  ,存在X的某一个真子集X'能决定Y

  • 传递依赖:  

Armstrong公理系统

  • 自反律:若  ,则  为F所蕴含。

  • 增广律:若  为F所蕴含,且  ,则  为F所蕴含。

  • 传递律:若  ,  为F所蕴含,则  为F所蕴含。

规范化

  • 1NF(第一范式):若关系模式R的每一个分量是不可再分的数据项,则关系模式  。

  • 2NF(第二范式):若关系模式  ,且每一个非主属性完全依赖于主码,则关系模式  。

  • 3NF(第三范式):若关系模式  中若不存在这样的主码X,属性组Y及非主属性  使得  成立,则关系模式  (任何非主属性不依赖于其它非主属性)。

  • BCNF(巴斯-科德范式):在3NF基础上,任何非主属性不能对主码子集依赖。

1NF的问题

  • 冗余度大

  • 修改不一致性

  • 插入异常

  • 删除异常

事务

  • 原子性

  • 一致性

  • 隔离性

  • 持久性

备份与恢复

  • 事务内部故障、系统故障、介质故障、计算机病毒

  • 静态转储、动态转储

  • 全量转储、增量转储

  • 日志文件(立即写入日志文件、定期刷入数据文件)

并发控制

  • 不一致性:丢失修改、不可重复读、读脏数据

  • 排它锁、共享锁

⬆点击抽奖

文章转载自Persimmon NGP 项目,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论