CREATE database database_name; //创建数据库
CREATE database database_name character set=gbk/utf8; //创建指定字符集的数据库
CREATE database if not exists database_name; //创建数据库前判断是否存在同名数据库
数据库基本操作
SHOW databases; //查看数据库
SHOW create database 库名; //显示数据库创建信息
SELECT database(); //查看当前数据库
ALTER database database_name default character set gbk/utf8; //设置默认字符集
DROP database database_name; //删除数据库
数据表基本操作
CREATE table 表名(字段名1 类型(长度) [约束],字段名2 类型(长度) [约束],......);//创建数据表
SHOW tables; //查看数据表
desc table_name; //查看表结构
ALTER table table_name add 列定义 [first/after 列名]; //向表中新添加列,[]内表示在某列的前或后添加,不指定则添加到最后
ALTER table table_name change 列名 原列名; //列名重定义
ALTER table table_name modify 列定义; //修改列数据类型
ALTER table table_name drop 列名; //删除列
ALTER table table_name rename 新表名; //重命名该表
ALTER table table_name order by 列名; //排序
ALTER table table_name alter 列名 {set default literal/drop default} //指定修改默认值或删除
DROP table table_name; //删除表
CREATE table table_name1 like table_name2; //创建一个结构相同的空表
用户管理基本操作
CREATE user 用户 identified by 'password'; //创建新用户 用户='用户名'@'主机名'
DROP user 用户; //删除用户
GRANT privileges on database_name.table_name to 用户; //授权用户权限 table_name可用*代表所有表
REVOKE privileges on daatabase_name.table_name from 用户; //回收用户权限
其中privileges可以包含:CREATE,ALTER,DROP:库/表结构操作
SELECT,INSERT,DELETE,UPDATE:数据操作
REFERENCES:外键权限
INDEX:索引
RENAME user 老用户 to 新用户; //修改用户名
SET PASSWORD for 用户=password('新密码'); //修改用户密码
DROP user 用户; //删除用户
数据插入
INSERT into table_name(列名1,列名2,...) values (记录1,记录2,...),(记录1,记录2,...),(...); //插入新记录方式一,可插入多条
INSERT into table_name set 列名1=记录1,列名2=记录2,...; //插入新记录方式二
INSERT into table_name1 select * from table_name2; //从已有的表中插入数据进来
INSERT into database_name1.table_name1 select * from database_name2.table_name2; //从一个库的一张表记录插入到另一个库的另一张表中
数据修改
UPDATE table_name1,table_name2,... set 列名1=expr1,列名2=expr2,... where 条件; //修改表数据
UPDATE table_name1 a,table_name2 b set a.列名1=b.列名2 where 条件; //将表1的列名1设置成跟表2的列名2一样
数据删除
DELETE from table_name; //删除数据表中的所有记录
DELETE from table_name where 条件; //删除满足条件的行
例:DELETE user1,user2 from user1,user2,user where user1.id=user.id and user2.id=user.id; //刪除user1中id值等於user的所有行和user2的id值等于user的id值的所有行
show语句
SHOW tables或 SHOW tables from database_name; //显示当前数据库中所有表名称
SHOW databases; //显示所有数据库的名称
SHOW columns from table_name from database_name 或 SHOW columns from database_name.table_name; //显示表中列的名称
SHOW grants for user_name; //显示一个用户的权限,显示结果类似于grant命令
SHOW index from table_name; //显示表的索引
SHOW status; // 显示一些系统特定资源的信息,例如正在运行的线程数量
SHOW variables; //显示系统变量的名称和值
SHOW processlist; //显示系统中正在运行的所有进程
SHOW table status; //显示当前使用或者指定的database中的每个表的信息;
SHOW privileges: //显示服务器所支持的不同权限。
SHOW create database database_ name: //显示创建某一个数据库的CREATEDATABASE语句。
SHOW create table table_name: //显示创建一个表的 CREATE TABLE语句。
SHOW events; //显示所有事件的列表。
SHOW innodb status; //显示innoDB存储引擎的状态。
SHOW logs; //显示BDB存储引擎的日志。
SHOW warnings; //显示最后一个执行的语句所产生的错误、警告和通知
SHOW errors; //只显示最后-一个执行语句所产生的错误。
SHOW [storage] engines; //显示安装后的可用存储引擎和默认引擎。
SHOW procedure status; //显示数据库中所有存储过程基本信息,包括所属数据库、存储过程名称、创建时间等。
SHOW create proceduresp_name; /显示某一个存储过程的详细信息。