写在前面
SQL(Structured Query Language) 即结构化查询语言,是一种应用广泛的数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL 是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
数据库的基本操作无非就是增删查改,但是因为 SQL 的灵活性,我们就有了更多的方式来完成大多数复杂的操作。
SQL 分类
分类简写 |
分类 |
常用语句 |
DDL |
数据定义语言 |
CREATE ,ALTER ,DROP ,DECLARE |
DML |
数据操纵语言 |
SELECT ,DELETE ,UPDATE ,INSERT |
DCL |
数据控制语言 |
GRANT ,REVOKE ,COMMIT ,ROLLBACK |
SQL 语句
依照 SQL 分类规则 对常用语句的整理
本文行内元素示例
格式 |
特征 |
含义 |
col_name |
由下划线分割 |
自定义字段名称 |
[NOT NULL] |
由方括号包裹 |
可选内置关键字 |
本文使用到的英文术语词汇
DDL
CREATE
创建数据库
创建表
1
| CREATE TABLE table_name(col_name col_type [NOT NULL] [PRIMARY KEY], col_name1 col_type1 [NOT NULL], ...)
|
根据现有表创建新表
1
| CREATE TABLE table_name_new LIKE table_name_old
|
创建索引
索引无法更改,需更改必须删除重建
1
| CREATE [UNIQUEE] INDEX index_name ON table_name(col_name)
|
创建视图
1
| CREATE VIEW view_name AS SELECT table_name
|
ALTER
为数据表增加一列
列增加后将无法被删除,唯一能改变的是增加 VARCHAR 类型的长度
1
| ALTER TABLE table_name ADD COLUMN col_name col_type
|
添加主键
1
| ALTER TABLE table_name ADD PRIMARY KEY(col_name)
|
删除主键
1
| ALTER TABLE table_name DROP PRIMARY KEY(col_name)
|
DROP
删除数据库
删除数据表
删除索引
删除视图
DECLARE
DML
INSERT
DELETE
SELECT
UPDATE
DCL
GRANT
REVOKE
COMMIT
ROLLBACK