一、数据库操作
DATABASES关键字可以用SCHEMA关键字替代
- 创建数据库
CREATE DATABASE IF NOT EXISTS db_name --IF NOT EXISTS可以省略
DEFAULT CHARACTER SET = charset_name --指定数据库字符集,可以省略
DEFAULT COLLATEN = collation_name; --指定字符集的校对规则
- 选择数据库
USE db_name; --选择数据库之后可以进行后续对数据库的操作
- 修改数据库
ALTER DATABASE db_name --选择数据库
alter-specification; --修改语句
- 删除数据库
DROP DATABASE IF_EXISTS db_name; -- IF EXISTS 可以省略
- 查看数据库
SHOW DATABASES LIKE ‘pattern’ WHERE expr;
-- LIKE 用于指定数据库名称 WHERE限定数据库查询范围
二、表操作
- 创建表
CREATE TEMPORARY TABLE tb_name -- TEMPORARY关键字表明是临时表,可以省略,表示为持久表
(
col1_name 数据类型 [列级完整性约束] [DEFAULT 默认值],
col2_name 数据类型 [列级完整性约束] [DEFAULT 默认值],
...
[表级完整性约束]
)ENGINE = 引擎类型;
-- 引擎类型可以省略,默认值也可以省略
常用完整性约束:
主码约束:PRIMARY KEY
唯一性约束:UNIQUE
非空值约束:NOT NULL
更新表
在表中添加新列
ALTER TABLE tb_name ADD COLUMN col_name 数据类型 [列级完整性约束] [DEFAULT 默认值];
修改表中列的属性
整体重定义ALTER TABLE tb_name CHANGE COLUMN col_name new_name 数据类型 [列级完整性约束] [DEFAULT 默认值];
修改表中列的默认值(操作速度快)
ALTER TABLE tb_name ALTER COLUMN col_name SET DEFAULT 新默认值; --修改默认值 ALTER COLUMN col_name DROP DEFAULT; --删除默认值
修改表中列的属性和位置
ALTER TABLE tb_name MODIFY COLUMN col_name new_name 数据类型 [列级完整性约束] [DEFAULT 默认值];
删除表中的列
ALTER TABLE tb_name DROP COLUMN col_name;
重命名表
RENAME TO子句
ALTER TABLE tb_name RENAME TO new_name;
RENAME TABLE 语句
RENAME TABLE tb_name TO new_name
删除表
DROP [TEMPORARY] TABLE [IF EXISTS] tb_name;
查看表
查看表的名称
SHOW [FULL(显示表的类型)] TABLES IN db_name;
查看表的结构
SHOW [FULL(显示全部信息)] COLUMNS IN/FROM tb_name IN/FROM db_name;
或者
DESC tb_name;
三、索引操作
- 创建索引
- CREATE INDEX语句
CREATE [UNIQUE] INDEX index_name
ON tb_name (col_name1 [(length)] [ASC/DESC],col_name2 [(length)] [ASC/DESC]...);
- CREATE TABLE语句
在使用CREATE TABLE语句创建表时直接加入语句创建索引
- PRIMARY KEY(col_name1,col_name2…);– 创建主键
- INDEX/KEY [index_name] (col_name1,col_name2…);–创建普通索引
- FOREIGN KEY [index_name] (col_name1,col_name2…); –创建外键
- ALTER TABLE语句
- CREATE INDEX语句
- 查看索引
SHOW INDEX/KEYS FROM tb_name FROM db_name WHERE expr;
- 删除索引
- DROP INDEX 语句
DROP INDEX index_name ON tb_name;
- ALTER TABLE语句
ALTER TABLE tb_name
DROP PRIMARY KEY/KEY/INDEX/FOREIGN KEY;
- DROP INDEX 语句
四、数据操作
- 插入数据
INSERT INTO tb_name [(col_name1,col_name2...)] --括号内为要赋值的列名,如果省略则按照表中列的默认顺序依次赋值
VALUE/VALUES(expr/default,expr/default...),(expr/default,expr/default...)
-- 括号内为赋给的值,可以是表达式或者是default 默认值,可以一次插入多行
指定部分列插入,未指定为默认值
INSERT INTO tb_name SET col_name1=expr1,col_name2=expr2...;
- 删除数据
DELETE FROM tb_name WHERE expr;
- 修改数据
UPDATE tb_name
SET col_name1=expr,col_name2=expr…
WHERE where_condition; - 查询数据
SELECT select_expr1,select
expr2 AS new_name,```
FROM tb_name WHERE where_condition;