# SQL
## CRUD操作
C Create 增
R Read 查
U Updata 改
D Delete 删
## 数据库对象
表、视图、触发器、存储过程、函数
## 数据操作
DML/DQL Data Maniputlate/Query Language
### 查询
SELECT语句
方言
```sql
SELECT * FROM Employee; -- 标准SQL SELECT * FROM `erp`.`Employee`; -- MYSQL SELECT * FROM [erp].[Employee]; -- SQL Server
```
订单表
```sql
SELECT * FROM `order` -- 表名如果叫order,加上反引号 SELECT * FROM t_order -- 表名叫t_order,可以避免和关键词冲突
```
## 数据库范式
第一范式 1NF 字段不可再分,原子性
第二范式 2NF 每一行数据能够被唯一区分
第三范式 3NF 非主键属性之间不存在依赖关系,要引用其他表内容必须引用其他表的主键(外键引用)
## 查询练习
1、查询所有的中国城市信息,列出城市名、城市人口 2、查询人口大于1000万的城市,列出城市名、城市人口、所在国家 3、查询上海和纽约讲的官方语言,列出城市名、城市人口、语言
## 插入、删除、更新数据
```sql
INSERT INTO table_name VALUES ([数据列表]) DELETE FROM table_name WHERE id = ? UPDATE table_name SET col_name=new_value, [col_name2=new_value2,...] WHERE id = ?
```
## 加密
MD5 SHA1 AES BCrypt 会加盐
## 创建表
CREATE
### 数据类型
INT 4Byte 整数 BIGINT 8B 整数 DECIMAL(M, N) DECIMAL(10,2) 浮点型
TINYINT 1B 整数 用作枚举、布尔型兼容
DATETIME 日期时间
VARCHAR(N) VARCHAR(50) 可变长度字符串 CHAR(N) CHAR(50) 不可变长度字符串
```sql
CREATE TABLE table_name( id int primary key auto_increment, col_name col_type, .... )
``` 标签:name,##,0715,--,table,col,SELECT From: https://www.cnblogs.com/Chengjuice/p/18306309