【数据库】模块一:数据库基础与关系代数

我们首先进入 模块一:数据库系统基础架构与关系代数。

第一站:数据库系统的三级模式与两级映像

银行的系统对数据安全性、独立性要求极高,而数据库的三级模式结构正是为了实现"物理独立性"和"逻辑独立性"而设计的。

  1. 三级模式(数据的三个视角)
    外模式(External Schema / 用户模式):

定义:数据库用户(包括程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述。

大白话:就是 视图(View) 或者给特定部门开放的特定数据表子集。比如前台柜员只能看到客户的姓名和余额,看不到密码哈希值。

模式(Schema / 概念模式):

定义:数据库中全体数据的逻辑结构和特征的说明,是所有用户的公共数据视图。

大白话:就是数据库里真实存在的所有基本表(Table)的集合。一个数据库只有一个模式。

内模式(Internal Schema / 存储模式):

定义:数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。

大白话:数据在硬盘上是怎么存的?索引是用 B+ 树还是 Hash?怎么聚簇的?一个数据库只有一个内模式。

  1. 两级映像(数据独立性的保护伞)
    正是因为有这两层映像,当底层发生变动时,上层应用程序才不需要重写。

外模式 / 模式映像 ⟶\longrightarrow⟶ 保证【逻辑独立性】:

当数据库的整体逻辑结构(模式)改变时(比如增加了一个新字段),只需要修改这个映像,让外模式保持不变,用户的应用程序就不需要修改。

模式 / 内模式映像 ⟶\longrightarrow⟶ 保证【物理独立性】:

当数据的物理存储体制(内模式)改变时(比如从机械硬盘换到固态硬盘,或者修改了索引类型),只需要修改这个映像,而逻辑结构(模式)不需要变,用户的应用程序更不需要变。

第二站:关系代数基本运算(笔试高频符号题)

关系代数是以集合为基础的运算。银行笔试非常喜欢考你某个符号代表什么操作,或者让你用符号表示一个查询。

假设有两个关系(表) RRR 和 SSS:

  1. 传统集合运算
    并(∪\cup∪):合并 RRR 和 SSS 的所有元组,去除重复(要求 RRR 和 SSS 结构相同)。

交(∩\cap∩):找 RRR 和 SSS 中共同拥有的元组。

差(−-−):在 RRR 中但不在 SSS 中的元组(R−SR - SR−S)。

笛卡尔积(×\times×):无条件交叉组合。如果 RRR 有 mmm 行,SSS 有 nnn 行,结果有 m×nm \times nm×n 行。

  1. 专门的关系运算(核心考点)
    选择(σ\sigmaσ - Sigma):挑出符合条件的"行"。

示例:σbalance>5000(Account)\sigma_{balance > 5000}(Account)σbalance>5000(Account) 表示从账户表中选出余额大于 5000 的所有行。

投影(π\piπ - Pi):挑出需要的"列"(并自动去重)。

示例:πname,id(Customer)\pi_{name, id}(Customer)πname,id(Customer) 表示只看客户表中的姓名和身份证号这两列。

连接(⋈\bowtie⋈):把两个表拼起来。

等值连接:按照某个字段相等的条件拼接。

自然连接(⋈\bowtie⋈ 符号两边不加条件):特殊的等值连接。它会自动寻找 RRR 和 SSS 中同名的属性进行等值连接,并且在结果中把重复的同名列去掉(笔试常考这个细节!)。

相关推荐
777VG8 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
aax12134539 小时前
VOC 集群治理工程实操|美丽蓝天绿岛项目 RTO 工艺选型、管控方案与申报要
大数据·数据库·人工智能
IvorySQL9 小时前
PG 日报|优化缓冲区批量扫描,降低多套接字并发竞争
数据库·人工智能·postgresql·开源·区块链
这个DBA有点耶9 小时前
交易型数据库是什么?OLTP核心能力与2026选型指南
数据库·数据仓库·sql·database·数据库架构·olap·dba
大熊猫侯佩10 小时前
WWDC26 全新 SwiftData 的 .codable 宏选项:它不是泛型专用胶水
数据库·swift·apple
童谣112 小时前
越华环保集团市级统筹申报数字化中台:政策校验与减排仿真一体化架构
数据库·架构
制造数据与AI践行者老蒋12 小时前
离谱!PromptTemplate 遇上 JSON,花括号直接引发解析战争
数据库·microsoft·json
中微极客12 小时前
用LangChain 0.3构建生产级RAG与Agent:从API集成到Streamlit部署
数据库·人工智能·langchain
吴声子夜歌12 小时前
MongoDB 4.x——并发优化
数据库·mongodb
不如语冰13 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python