SHOW DATABASES;
查询当前数据库SELECT DATABASE();
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
(中括号的内容可以省略,使用时不加中括号)
DROP DATABASE [IF ESISTS] 数据库名;
USE 数据库名;
SHOW TABLES;
DESC 表名;
SHOW CREATE TABLE 表名;
1.1.1 DDL表操作—建表
CREATE TABLE 表名(
字段1 字段1类型[COMMENT 字段1注释],
字段2 字段2类型[COMMENT 字段2注释],
字段3 字段3类型[COMMENT 字段3注释],
......
字段n 字段n类型[COMMENT 字段n注释]
)[COMMENT 表注释];
1.1.2 DDL表操作—数据类型
char 和 varchar在使用时都需要指定字符串的长度,如char(10);
1.1.3 DDL表操作—修改
添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMENT 注释] [约束];
修改
修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
删除字段
ALTER TABLE 表名 DROP 字段名;
修改表名
ALTER TABLE 表名 RENAME TO 新表名;
删除表
删除表
DROP TABLE [IF EXISTS] 表名;
删除指定表,并重新创建该表
TRUNCATE TABLE 表名;
INSERT INTO 表名 (字段名1,字段名2,...) VALUES(值1,值2,...);
INSERT INTO 表名 VALUES(值1,值2,...);
INSERT INTO 表名 (字段名1,字段名2,...) VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...);
INSERT INTO 表名 VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...);
注意:
UPDATE 表名 SET 字段名1=值1,字段名2=值2,...[WHERE 条件];
注意:修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的全部数据。
DELETE FROM 表名 [WHERE 条件];
注意:
SELECT
字段列表FROM
表名列表WHERE
条件列表GROUP BY
分组字段列表HAVING
分组后条件列表ORDER BY
排序字段列表LIMIT
分页参数SELECT 字段1,字段2,字段3,...FROM 表名;
SELECT * FROM 表名;
SELECT 字段1 [AS 别名1],字段2 [AS 别名2]...FROM 表名;
SELECT DISTINCT 字段列表 FROM 表名;
SELETE 字段列表 FROM 表名 WHERE 条件列表;
SELECT 聚合函数(字段列表) FROM 表名;
注意:null值不参与所有聚合函数运算
SELETE 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件];
SELETE 字段列表 FROM 表名 ORDER BY 字段1 排序方式1,字段2 排序方式2;
SELETE 字段列表 FROM 表名 LIMIT 起始索引,查询记录数;
FROM → WHERE → GROUP BY → SELECT → ORDER BY → LIMIT
USE mysql;
SELETE USER * FROM user
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
DROP USER '用户名'@'主机名';
SHOW GRANTS FOR '用户名'@'主机名';
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
注意: