SHOW DATABASES; —— 查看当前所有数据库
CREATE DATABASE <数据库名称>; —— 创建数据库
DROP DATABASE <数据库名称>; —— 删除数据库
USE <数据库名>; —— 选择数据库
CREATE TABLE <表名>; —— 创建数据表
SHOW TABLES; —— 查看数据表
DESCRIBE <表名>; 或 DESC <表名>; —— 查看表基本结构
SHOW CREATE TABLE <表名\G>; —— 查看表详细结构(可用于查看建表时详细语句及存储引擎和字符编码)加 \G 优化输出结果,更易读。
ALTER TABLE <旧表名> RENAME [TO] <新表名>; —— 修改表名 TO 可选参数,使用与否不影响结果
ALTER TABLE <表名> MODIFY <字段名> <数据类型> —— 修改字段的数据类型
ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>; —— 修改字段名
ALTER TABLE <表名> ADD <新字段名> <数据类型>; —— 添加字段
ALTER TABLE <表名> DROP <字段名>; —— 删除字段
ALTER TABLE <表名> MODIFY <字段1> <数据类型> FIRST | AFTER <字段2>; —— 修改字段的排列位置。字段1 指要修改位置的字段,“数据类型” 指 “字段1” 的数据类型,“FIRST” 为可选参数, 指将 “字段1” 修改为表的第一个字段,“AFTER 字段2” 指将 “字段 1” 插入到 “字段 2” 后面
ALTER TABLE <表名> ENGINE=<更改后的存储引擎名>; —— 更改表的存储引擎
ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>; —— 删除表的外键约束
DROP TABLE [IF EXISTS] 表1, 表2, .... 表n; —— 删除灭有被关联的表
存储引擎的选择
需要提供提交、回滚和崩溃恢复能力的事务安全(ACID兼容)能力,并要求实现并发控制。选 InnoDB。
主要用来插入和查询记录,则选MyISAM。
只是临时存放数据,数据量不大,不需要较高安全性,可选将数据保存在内存中的Memory。
只有INSERT 和 SELECT 操作, 可选 Archive.支持高并发插入,适合存储归档数据,如记录日志信息。
主键约束(Primary Key Constraint)
要求主键列数据唯一,并且不允许为空。 分为:单子段主键和多字段主键
单子段主键:
语法规则: 字段名 数据类型 PRIMARY KEY [默认值]
多字段联合主键
语法规则: PRIMARY KEY [字段1,字段2,... , 字段n]
自增属性: AUTO_INCREMENT
不是每个表中都需要主键。多个表之间进行链接操作时,需要用到主键
外键约束
用来建立两个表之间的链接,可以使一列或多列。一个表可以有一个或多个外键
主表(父表): 主键所在的那个表
从表(子表):外键所在的那个表
语法规则: [CONSTRAINT <外键名>] FOREIGN KEY 字段名1 [,字段名2,...] REFERENCES <主表名> 主键列1,[,主键列2 ...]
外键约束不能跨引擎使用
非空约束(Not Null Constraint)
指字段的指不能为空
语法规则: 字段名 数据类型 not null
唯一约束(Unique Constraint)
要求该列唯一,允许为空,但只能出现一个空值。
语法规则: 字段名 数据类型 UNIQUE
默认约束(Default Constraint)
指定某列的默认值
语法规则: 字段名 数据类型 DEFAULT 默认值