章节摘要:在写第一句 SQL 之前,先搞清数据库是什么、SQL 是什么、为什么要学它。本章建立整体认知,为后面所有章节铺地基。
阅读完本章,你应当能够:
概念先于语法——知道为什么有 SQL,写起来才不懵。
定义数据库、数据库管理系统、SQL,理清三者的关系。
从应用场景说清 SQL 的价值,以及它和 NoSQL、编程语言查询的分工。
1.1 是什么(定义) ↓ 接着问 1.2 为什么(价值)
先定义再讲价值,是概念筑基的常规顺序。
本章是纯概念铺垫,没有动手代码,最容易犯的错是"读完就忘"。建议按三步消化:
本章概念是后面所有章节的地基。第 2 章讲表结构,第 3 章起写查询,都会反复引用本章的术语。如果时间紧,至少把"数据库、DBMS、表"三者的区别和 SQL 五大子语言记牢,后面才能顺畅跟进。
学习节奏建议半天到一天。不用追求背熟所有细节,重点是建立整体框架。
学完本章,请尝试回答下面三个问题,答不出的地方回到对应小节补一补:
第一个问题:数据库、数据库管理系统、表,这三个概念是什么关系?能不能用一句话把它们的层次说清楚?
第二个问题:SQL 有哪几类子语言,各自的典型语句是什么?特别是查询、增删改、建表这几类,必须能脱口而出。
第三个问题:SQL 是声明式语言,这个特点意味着什么?为什么说"写 SQL 时要在脑子里想着结果集,而不是想着步骤"?
这三个问题覆盖了本章最核心的知识点。能顺畅答出,说明概念框架已经立住了,可以放心进入第 2 章。如果某个问题卡壳,别急着往下走——第 2 章的关系模型、表、键,全都建立在本章的概念之上,地基打牢后面才走得稳。
本章提到的"表之间通过键关联",会在第 2 章展开讲;"查询结果不加排序顺序不定"会在第 3 章写查询时反复用到;"外键保证关系正确"会在第 4 章多表连接时体现。现在留下的每一个印象,后面都会派上用场。