SQL 课程大纲

基础入门

  • SQL 简介和历史
  • 关系数据库概念
  • 安装和配置数据库管理系统 (如 MySQL, PostgreSQL)
  • 基本 SQL 语法
  • 创建和管理数据库

数据定义语言 (DDL)

  • 创建表 (CREATE TABLE)
  • 修改表结构 (ALTER TABLE)
  • 删除表 (DROP TABLE)
  • 索引创建和管理
  • 视图创建和管理

数据操作语言 (DML)

  • 插入数据 (INSERT)
  • 更新数据 (UPDATE)
  • 删除数据 (DELETE)
  • 基本查询 (SELECT)
  • WHERE 子句和条件过滤

查询进阶

  • 排序 (ORDER BY)
  • 分组 (GROUP BY)
  • 聚合函数 (SUM, AVG, COUNT, MAX, MIN)
  • HAVING 子句
  • 子查询

多表查询

  • 表连接 (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN)
  • 自连接
  • UNION 和 UNION ALL
  • 相关子查询

函数和表达式

  • 字符串函数
  • 数值函数
  • 日期和时间函数
  • 条件表达式 (CASE WHEN)
  • 类型转换

事务管理

  • 事务概念
  • ACID 属性
  • 事务控制语句 (BEGIN, COMMIT, ROLLBACK)
  • 事务隔离级别

索引和性能优化

  • 索引类型和创建
  • 执行计划分析
  • 查询优化技巧
  • 性能监控和调优

存储过程和函数

  • 创建和使用存储过程
  • 创建和使用自定义函数
  • 参数传递
  • 错误处理

触发器

  • 触发器概念
  • 创建和管理触发器
  • 触发器类型 (BEFORE, AFTER, INSTEAD OF)
  • 触发器应用场景

视图

  • 视图概念和用途
  • 创建和管理视图
  • 可更新视图
  • 物化视图 (特定数据库系统)

安全性和权限管理

  • 用户创建和管理
  • 授权和撤销权限
  • 角色管理
  • 数据加密

高级查询技术

  • 窗口函数
  • 公共表表达式 (CTE)
  • 递归查询
  • PIVOT 和 UNPIVOT 操作

数据仓库概念

  • 数据仓库架构
  • 维度建模
  • ETL 过程
  • OLAP 操作

NoSQL 集成

  • 关系型数据库与 NoSQL
  • JSON 数据类型和操作
  • 全文搜索

数据库设计

  • 实体关系图 (ERD)
  • 范式化和反范式化
  • 设计模式和最佳实践

数据库管理和维护

  • 备份和恢复
  • 日志管理
  • 性能监控
  • 数据库迁移

大数据和分布式数据库

  • 分片技术
  • 分布式查询处理
  • 大规模数据处理策略

SQL 在应用开发中的应用

  • ORM 框架集成
  • 数据库连接池
  • 预处理语句和参数化查询

项目实战

  • 数据库设计和实现
  • 复杂查询和报表生成
  • 数据仓库项目

SQL 和数据库生态系统

  • 主流数据库比较 (MySQL, PostgreSQL, Oracle, SQL Server)
  • SQL 标准和方言
  • 持续学习和职业发展