SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- SQL语句可以使用空格/缩进来增强语句的可读性。
- MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
- 注释:
- 单行注释:–注释内容 或 # 注释内容(MySQL特有)
- 多行注释:/* 注释内容 */
SQL分类
分类 | 全称 | 说明 |
---|---|---|
DDL | Data Query Language | 数据定义语言,用来定义数据库对象(数据库,表,字段) |
DML | Data Manipulation Language | 数据库操作语言,用来对数据库表中的数据进行增删改 |
DQL | Data Definition Language | 数据查询语言,用来查询数据库中表的记录 |
DCL | Data Control Language | 数据控制语言,用来创建数据库用户、控制数据库的访问权限 |
DDL-数据库操作
查询
查询所有数据库
1
SHOW DATABASES;
查询当前数据库
1
SELECT DATABASE();
查询当前数据库所有表
1
SHOW TABLES;
查询表结构
1
DESC 表名;
查询指定表的建表语句
1
SHOW CREATE TABLE 表明
创建
1
CREATE DATABASE 数据库名;
1
CREATE DATABASE IF NOT EXISTS 数据库名;
1
CREATE DATABASE 数据库名 DEFAULT CHARSET 字符集 COLLATE 排序规则;
删除
1
DROP DATABASE [IF EXISTS] 数据库名;
使用
1
USE 数据库名;
DDL-操作表-创建语法
1 | CREATE TABLE [IF NOT EXISTS] 表名 ( |
注意: … 为可选字段,最后一个字段后面没有参数 !!!
简单举例:
1 | create table tb_user( |
注意:最后一个字段后面没有参数 !!!
常用数据类型:
类型 | 说明 | 示例 |
---|---|---|
INT | 整型 | age INT |
VARCHAR(n) | 可变长度字符串 | name VARCHAR(50) |
CHAR(n) | 定长字符串 | gender CHAR(1) |
DECIMAL(m,n) | 精确小数 | price DECIMAL(10,2) |
DATE | 日期 | birthday DATE |
DATETIME | 日期时间 | create_time DATETIME |
TEXT | 长文本 | description TEXT |