跳转至

SQL 学习目录

SQL 是 Structured Query Language,用于定义数据库结构、查询数据、修改数据以及控制约束。 它不是某一家数据库独占的语言,而是一套通用标准加上各数据库自己的扩展。

适合谁学

  • 想系统学习关系型数据库基础的读者。
  • 需要为 Web 开发、脚本开发或数据分析补齐数据库能力的读者。
  • 想理解 CTF Web 题、代码审计或注入防护中数据库部分的读者。

先建立的关键认知

  • 表由行和列组成,行表示一条记录,列表示字段。
  • SQL 语句分为查询、写入、定义结构和约束等几类。
  • 不同数据库都支持大量共同语法,但细节并不完全相同。
  • 生产代码中不要把外部输入直接拼接进 SQL,应使用参数化查询。

推荐阅读顺序

  1. SQL 教程:先学查询、过滤、排序和基础增删改。
  2. SQL 高级教程:继续学习连接、约束、表结构和常见高级语法。
  3. SQL 函数:掌握聚合、分组和字符串/日期类常用函数。

常见数据库差异

  • MySQL 常见关键字有 AUTO_INCREMENT、NOW()、LENGTH()。
  • SQL Server 常见关键字有 TOP、GETDATE()。
  • PostgreSQL 常见替代有 SERIAL/IDENTITY、CURRENT_TIMESTAMP。
  • SQLite 支持大量基础 SQL,但部分约束和数据类型行为更宽松。

学习时应优先理解概念,再对照具体数据库的官方文档确认方言差异。

安全边界

本目录只讲数据库原理、合法开发与防护知识。涉及 SQL 的示例应仅用于本地练习、授权环境、课程实验和防御学习。

下一步:SQL 教程