1.登录
mysql -h localhost -u root -p
2.查看存在的数据库
SHOW DATABASES;
3.创建数据库
CREATE DATABASE <数据库名>;
4.查看数据库定义
SHOW CREATE DATABASE <数据库名>\G;
5.删除数据库
DROP DATABASE <数据库名>;
6.查看数据库引擎
SHOW ENGINES\G;
7.引擎选择
| 功能 | MylSAM | Memory | InnoDB | Archive |
|---|---|---|---|---|
| 存储限制 | 256TB | RAM | 64TB | None |
| 支持事务 | No | No | Yes | No |
| 支持全文索引 | Yes | No | No | No |
| 支持数索引 | Yes | Yes | Yes | No |
| 支持哈希索引 | No | Yes | No | No |
| 支持数据缓存 | No | N/A | Yes | No |
| 支持外键 | No | No | Yes | No |
InnoDB:提供提交、回滚和崩溃恢复能力的事务安全(ACID)能力,并要求并发控制。
MylSAM:数据表主要用来插入和查询操作,MylSAM可提供较高的处理效率。
Memory:临时存放数据,数据量不大,并且不需要提供较高的数据安全性,可以将数据保存在内存中的Memory引擎,Mysql使用该引擎作为临时表,存放查询的中间结果。
Archive:如果只有select和insert操作,可以选择Archive引擎,它支持高并发的插入操作,但本身不是事务安全的,因此可以用来存储归档数据,如日志等。
8.切换数据库以及查看数据库所用引擎
USE <数据库名>;
SHOW VARIABLES LIKE 'STORAGE-ENGINE';
9.查看数据库表
SHOW TABLES;
10.创建表
CREATE TABLE <表名>
(
字段名1 数据类型 [列表级约束条件] [默认值],
字段名2 数据类型 [列表级约束条件] [默认值],
......
[表级约束条件]
);
11.主键约束
1)单字段主键
字段名 数据类型 PRIMARY KEY [默认值]
CREATE TABLE tb_temp
(
id INT(11) PRIMERY KEY,
name VARCHAR(25)
);
[CONSTRAINT <约束名>] PRIMERY KEY[字段名]
CREATE TABLE tb_temp
(
id INT(11),
name VARCHAR(25),
PRIMERY KEY(id)
);
2)多字段联合主键
PRIMERY KEY[字段1,字段2,...字段n]
CREATE TABLE tb_temp
(
id INT(11),
name VARCHAR(25),
PRIMERY KEY(id,name)
);
12.外键约束
[CONSTRAINT <外键名>] FOREING KEY[字段名1,字段名2,...字段名n]
REFERENCES <主表名> [主键列1,主键列2,...主键列n]
CREATE TABLE tb_dept1
(
id INT(11) PRIMERY KEY,
name VARCHAR(25)
);
CREATE TABLE tb_dept1
(
id INT(11) PRIMERY KEY,
dept_id INT(11) NOT NULL,
name VARCHAR(25),
CONSTRAINT fk_emp_dept1 FOREING KEY(dept_id) REFERENCES tb_dept1(id)
);
13.非空约束
字段名 数据类型 NOT NULL
14.唯一约束
字段名 数据类型 UNIQUE
CREATE TABLE tb_temp
(
id INT(11) PRIMERY KEY,
name VARCHAR(25) UNIQUE
);
[CONSTRAINT <约束名>] UNIQUE(<字段名>)
CREATE TABLE tb_temp
(
id INT(11),
NAME VARCHAR(25),
CONSTRAINT STH UNIQUE(name)
);
15.默认约束
字段名 数据类型 DEFAULT 默认值
16.列属性自动递增
字段名 数据类型 AUTO_INCREMENT
17.查看数据接口
DESCRIBE 表名;
DES 表名;
信息解析:
NULL:表示该列是否可以存储NULL值
Key:表示该列已编制索引。PRI表示该列是表主键的一部分;UNI表示该列是UNIQUE索引的一部分;MUL表示该列中某个给定值允许出现多次。
Default:表示该列是否有默认值。
Extra:表示可以获取的与给定列有关的附加信息。如:AUTO_INCREMENT等。
17.查看表详情结构语句
SHOW CREATE TABLE <表名\G>;
‘\G‘可使结果更直观,易于查看
18.修改表名
ALTER TABLE [表名] RENAME [新名称];
19.修改字段数据类型
ALTER TABLE <表名> MODIFY <字段名> <数据类型>;
20.修改字段名
ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;
20.添加字段
FIRST:可选参数,将新添加的字段置顶
AFTER 已存在字段名:可选参数,将新添加的字段放到某字段后
ALTER TABLE <表名> ADD <新字段名> <新数据类型> [约束条件] [FIRST | AFTER 已存在字段名];
21.删除字段
ALTER TABLE <表名> DROP <字段名>;
22.修改字段排列位置
ALTER TABLE <表名> MODIFY <字段1> <数据类型> FIRST|AFTER <字段2>;
23.更改表的存储引擎
ALTER TABLE <表名> ENGINE=<更改后的引擎名>
24.删除表的外键约束
ALTER TABLE <表名> DROP FOREING KEY <外键约束名>;
25.删除数据表
DROP TABLE [IF EXISTS]表1,表2,...表n;
3万+





