🗄️ 第一章 数据库的基础知识
📄 一句话概括

为什么不用 Excel 而要用数据库?因为 DBMS 有五件硬本事:查得快、立规矩、控并发、分权限、能恢复——每一条都是 Excel 撑不住的场面。

📝 本节和前面几节的关系

1-2 说数据库有【登记/整理/查询】三大特征,1-3 说这些活是 DBMS 干的;本节把镜头拉近,看 DBMS 管得好在哪——教材标题里那五个词(查询、限制、控制、访问权限、恢复)就是五个优势,逐个展开。

一、查询:快,而且一直快

1-2 讲过查询靠索引(书的目录)。这里补一句优势的真正含义:

而且数据库的查询可以按任意条件组合:【姓王、住宜昌、3 月买过两次东西的客户】,一条指令出来。文件翻找做这种活,等于大海捞针。

二、限制:数据从源头就不许错

数据库可以给每一列立规矩(术语叫约束):

规矩 意思 例子
类型限制 这一列只能放指定类型 【年龄】列不许填【十八岁】三个字
非空限制 这一列必须填 订单没有金额?不收
唯一限制 这一列不许重复 两个用户的身份证号不能相同

效果:错误数据在门口就被拦下,而不是进了库再花三天清理。Excel 没这道门卫——想填什么填什么,月底对不上账才知道错了。

三、控制:一百个人同时用也不打架

这是数据库最硬核的优势。想一个场面:

银行账户余额 1000 元,你的手机和电脑同时发起两笔转账:一笔 600,一笔 800。

如果两个操作各读各的(都看到【余额 1000】)、各写各的,最后账户可能出现荒唐的结果——钱超发了。

DBMS 的并发控制就是管这个的:多个人同时操作同一份数据时,由它排队、加锁、协调,保证每个操作要么完整做完、要么干脆不做,绝不出现【做了一半】。

Excel 的共享编辑碰上这种场面:两人同时改一个单元格,后保存的直接覆盖先保存的——钱就这么凭空多了少了。

四、访问权限:谁能看、谁能改,分得清清楚楚

数据库能给不同的人发不同的钥匙:

权限可以细到【某个人 × 某张表 × 某种动作】(看/插/改/删)。Excel 顶多给文件加个打开密码——要么全开,要么全关。

五、恢复:坏了能找回来

硬盘会坏、会断电、会误删。DBMS 的应对:

结果:硬盘坏 ≠ 数据没。Excel 文件一损坏,基本只能认栽。

六、五个优势连一张总表

优势 一句话 Excel 的对应下场
查询 百万条一秒出 翻到眼花
限制 错误数据进不了门 想填啥填啥
控制 百人并发不打架 后保存覆盖先保存
权限 谁能看谁能改分得清 一个密码走天下
恢复 坏了照日志找回 文件坏了就认栽

七、动手 Demo:纸面推演【两人同时转账】

不用电脑,拿笔推一遍,体会【没有并发控制】的后果:

  1. 账户 A 余额 1000,账户 B 余额 0
  2. 两笔转账同时发起:操作一【A→B 转 600】、操作二【A→C 转 800】
  3. Excel 情形:两个操作都先读到【A=1000】→ 操作一算出【A=400】写入 → 操作二算出【A=200】写入 → 最终 A=200,B=600,C=800 —— 总资产凭空多了 600(1000 变成 1600)
  4. DBMS 情形:两笔转账排队执行,第二笔先检查余额 1000−600=400 < 800,直接拒绝——总数守恒

看到什么算成功:能自己算出第 3 步那个【凭空多钱】的荒唐结果——算明白它,你就明白了为什么银行绝不能用表格软件管账。

八、30 秒实验

回忆学校选课系统开放的那一秒:几千人同时点【提交】。

一个选课系统,把本节五件事全用上了。

九、常见误区

  1. "Excel 也能当数据库用" —— 数据少、一个人用时可以;但并发、权限、约束、恢复四件事,Excel 一件都撑不住。公司账目一旦多人共享,Excel 必出事。
  2. "权限就是给电脑设个开机密码" —— 开机密码管的是【谁能开这台机器】;数据库权限管的是【这台机器上的某个人,能对哪张表做什么动作】,细得多。
  3. "备份过一次就永远安全" —— 备份是【某个时间点的快照】;今天的备份救不了今天下午新写的数据,所以生产系统都是定期备份+实时日志两条腿走路。
自测三问(点开对答案) 1. 教材标题里的五个词,分别对应哪五个优势? **查询(查得快)、限制(约束拦错)、控制(并发不打架)、访问权限(谁能看谁能改)、恢复(坏了能找回)**。 2. 两人同时转账的荒唐结果是怎么发生的? **都读到旧余额、各算各的、后写的覆盖先写的**——钱凭空多出来。 3. 硬盘坏了,数据库凭什么能把数据找回来? **备份(快照)+ 日志(操作记录)**,照着日志重做/倒带。

相关笔记