DDL
常用的DDL(Data Definition Language)命令用于数据库的结构定义,包括创建、修改和删除数据库对象。以下是一些常用的DDL命令及其示例:
CREATE TABLE 表名 ( 头名 数据类型, 头名 数据类型, ... );
|
ALTER TABLE 表名 ADD 头名 数据类型;
|
删除某列
ALTER TABLE 表名 DROP 头名 数据类型;
|
修改列的数据类型
ALTER TABLE 表名 MODIFY 头名 new_datatype;
|
修改列名同时数据类型也能改变
ALTER TABLE table_name CHANGE 老头名 新头名 数据类型;
|
DML
插入数据(增)
INSERT INTO 表名 (头名1, 头名2, ...) VALUES (值1, 值2, ...);
|
INSERT INTO 表名 VALUES (值1, 值2, ...); 所有头名按顺序
|
INSERT INTO users (id, name, email) VALUES (1, 'John Doe', 'john@example.com'), (2, 'Jane Doe', 'jane@example.com'), (3, 'Bob Smith', 'bob@example.com'); 插入多组数据
|
删除数据(删)
DELETE FROM table_name; 这将删除名为 table_name 的表中的所有行,但保留表结构不变。
|
DELETE FROM users WHERE id = 5; 这将删除 users 表中 id 为 5 的行。
|
数据更新(改)
UPDATE users SET age = age + 1; users 表中所有用户的 age 字段值都加 1。
|
UPDATE users SET age = 30 WHERE name = 'John'; users 表中 name 为 "John" 的用户的 age 更新为 30 岁。
|
DQL
数据查询(查)
SELECT column1, column2, ... FROM table_name WHERE condition;
|
SELECT * FROM table_name WHERE condition;
|
DCL
创建用户
CREAT USER '用户名'@'主机名' IDENTIFIED BY '密码'; 例:CREAT USER 'text'@'%' IDENTIFIED BY '123456'; 创建一个text用户,可以在任意ip主机访问数据库,密码为123456
|
修改密码
ALTER USER '用户名'@'主机名' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '新密码';
|
删除用户
显示权限
SHOW GRANTS FOR '用户名'@'主机名'
|

赋予权限
GRANK 权限名称,权限名称.... ON 数据库名.表明 TO '用户'@'主机名'; 数据库下的所有表可以用*.*来表示 GRANT ALL ON MYSQL.TO 'test'@'%'; GRANT ALL ON *.* TO 'test'@'%';
|
撤销权限
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名'; REVOKE SELECT ON *.* FROM 'test'e'%';
|
其他
每个表都最好加一个id
CREATE TABLE your_table_name ( id INT AUTO_INCREMENT PRIMARY KEY, -- Other columns );
|