环境
- MySQL 5.7.13
MySQL 及衍生版本
- MySQL
- MariaDB
- Percona Server
MySQL SQL 基础
DDL(Data Definition Language) - 数据定义
- TRUNCATE - 清空
- TRUNCATE TABLE Syntax - 清空数据表
- RENAME - 重命名
- RENAME TABLE Syntax - 重命名数据表
- CREATE - 创建
- CREATE VIEW Syntax - 创建视图
- CREATE EVENT Syntax - 创建事件
- CREATE INDEX Syntax - 创建索引
- CREATE TABLE Syntax - 创建数据表
- CREATE SERVER Syntax - 创建服务器
- CREATE TRIGGER Syntax - 创建触发器
- CREATE FUNCTION Syntax - 创建自定义函数
- CREATE DATABASE Syntax - 创建数据库
- CREATE PROCEDURE Syntax - 创建存储过程
- CREATE TABLESPACE Syntax - 创建数据表空间
- CREATE LOGFILE GROUP Syntax - 创建日志文件组
- ALTER - 修改
- ALTER VIEW Syntax - 修改视图
- ALTER EVENT Syntax - 修改事件
- ALTER TABLE Syntax - 修改数据表
- ALTER SERVER Syntax - 修改服务器
- ALTER DATABASE Syntax - 修改数据库
- ALTER FUNCTION Syntax - 修改自定义函数
- ALTER INSTANCE Syntax - 修改实例
- ALTER PROCEDURE Syntax - 修改存储过程
- ALTER TABLESPACE Syntax - 修改数据表空间
- ALTER LOGFILE GROUP Syntax - 修改日志分组
- DROP - 删除
- DROP VIEW Syntax - 删除视图
- DROP EVENT Syntax - 删除事件
- DROP INDEX Syntax - 删除索引
- DROP TABLE Syntax - 删除数据表
- DROP SERVER Syntax - 删除服务器
- DROP TRIGGER Syntax - 删除触发器
- DROP DATABASE Syntax - 删除数据库
- DROP FUNCTION Syntax - 删除自定义函数
- DROP PROCEDURE Syntax - 删除存储过程
- DROP TABLESPACE Syntax - 删除数据表空间
- DROP LOGFILE GROUP Syntax - 删除日志分组
- TRUNCATE - 清空
DML(Data Manipulation Language) - 数据操作
- DO
- CALL
- HANDLER
- LOAD XML
- LOAD DATA INFILE
- INSERT - 数据插入
- DELETE - 数据删除
- UPDATE - 数据修改
- SELECT - 数据查询
- JOIN - 连接
- LEFT JOIN - 左连接
- RIGHT JOIN - 右连接
- INNER JOIN - 内连接
- GROUP - 分组
- UNION - 联合
- JOIN - 连接
- REPLACE
- Subquery - 子查询
- LIMIT, OFFSET - 分页
DCL(Data Control Language) - 数据控制
- GRANT - 授权
- REVOKE - 撤销授权
Transactions and Lock - 事务
- START TRANSACTION, COMMIT, and ROLLBACK Syntax - 事务开始,事务提交和事务回滚
- Statements That Cannot Be Rolled Back - 不能执行回滚的语句
- Statements That Cause an Implicit Commit - 隐式提交
- SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT Syntax - 保存点,回滚到保存点,释放保存点
- LOCK TABLES and UNLOCK TABLES Syntax - 锁表与解锁
- SET TRANSACTION Syntax - 设置事务语法
- XA Transactions - XA 事务
MySQL Utility Statements - MySQL 实用语句
- USE Syntax - 设置当前 SQL 语句默认使用数据库
- HELP Syntax - 从 MySQL 参考手册返回在线信息
- EXPLAIN Syntax - 获取 SQL 执行信息
- DESCRIBE Syntax - 获取表结构信息
Database Administration Statements - 数据库管理员语句
- SET Syntax - 设置
- SET NAMES Syntax
- SET CHARACTER SET Syntax
- SET Syntax for Variable Assignment
- SHOW Syntax - 查看
- SHOW BINARY LOGS Syntax - 显示二进制日志
- SHOW BINLOG EVENTS Syntax - 显示二进制事件
- SHOW CHARACTER SET Syntax - 显示字符集
- SHOW COLLATION Syntax - 显示支持的字符
- SHOW COLUMNS Syntax - 显示字段信息
- SHOW CREATE DATABASE Syntax - 显示创建指定数据库的 SQL 语句
- SHOW CREATE EVENT Syntax - 显示创建指定事件的 SQL 语句
- SHOW CREATE FUNCTION Syntax - 显示创建指定自定义函数的 SQL 语句
- SHOW CREATE PROCEDURE Syntax - 显示创建指定存储过程的 SQL 语句
- SHOW CREATE TABLE Syntax - 显示创建指定表的 SQL 语句
- SHOW CREATE TRIGGER Syntax - 显示创建指定触发器的 SQL 语句
- SHOW CREATE USER Syntax - 显示创建指定用户的 SQL 语句
- SHOW CREATE VIEW Syntax - 显示创建指定视图的 SQL 语句
- SHOW DATABASES Syntax - 显示数据库列表
- SHOW ENGINE Syntax - 显示引擎的操作信息
- SHOW ENGINES Syntax - 显示支持的引擎
- SHOW ERRORS Syntax - 显示错误
- SHOW EVENTS Syntax - 显示事件
- SHOW FUNCTION CODE Syntax - 显示自定义函数代码
- SHOW FUNCTION STATUS Syntax - 显示自定义函数状态
- SHOW GRANTS Syntax
- SHOW INDEX Syntax - 显示索引
- SHOW MASTER STATUS Syntax
- SHOW OPEN TABLES Syntax
- SHOW PLUGINS Syntax
- SHOW PRIVILEGES Syntax - 显示当前用户权限
- SHOW PROCEDURE CODE Syntax - 显示存储过程代码
- SHOW PROCEDURE STATUS Syntax - 显示存储过程状态
- SHOW PROCESSLIST Syntax
- SHOW PROFILE Syntax - 显示配置文件
- SHOW PROFILES Syntax - 显示配置文件列表
- SHOW RELAYLOG EVENTS Syntax
- SHOW SLAVE HOSTS Syntax - 查看附属主机
- SHOW SLAVE STATUS Syntax - 查看附属主机状态
- SHOW STATUS Syntax - 查看各种状态
- SHOW TABLE STATUS Syntax - 显示指定数据库的所有表状态
- SHOW TABLES Syntax - 显示指定数据库的所有表
- SHOW TRIGGERS Syntax - 显示触发器
- SHOW VARIABLES Syntax - 显示变量
- SHOW WARNINGS Syntax - 显示警告
- Table Maintenance Statements - 表维护语句
- CHECK TABLE Syntax - 检查表
- REPAIR TABLE Syntax - 修复表
- ANALYZE TABLE Syntax - 分析表
- OPTIMIZE TABLE Syntax - 优化表
- CHECKSUM TABLE Syntax - 校检表
- Account Management Statements - 账号管理语句
- GRANT Syntax - 修复
- REVOKE Syntax - 撤销
- DROP USER Syntax - 删除用户
- ALTER USER Syntax - 修改用户
- CREATE USER Syntax - 创建用户
- RENAME USER Syntax - 重命名用户
- SET PASSWORD Syntax - 设置密码
- Other Administrative Statements - 其他管理语句
- Plugin and User-Defined Function Statements - 插件和用户定义的函数语句
- SET Syntax - 设置
范式 & 反范式
- 范式
- 第一范式(1NF)
- 第二范式(2NF)
- 第三范式(3NF)
- 巴斯-科德范式(BCNF)
- 第四范式(4NF)
- 第五范式(5NF,又称完美范式)
- 反范式
- 没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。
- 范式