1、表的创建
CREATE TABLE table_name(
字段名 数据类型,
字段名 数据类型,
……
字段名 数据类型);
2、表定义查看
SHOW CREATE TABLE table_name;
DESC table_name;
3、表的删除
DROP TABLE table_name;
DROP TABLE table_name \g
DROP TABLE table_name \G(推荐,结果显示的更美观)
4、表的修改
(1)修改表名
ALTER TABLE old_table_name RENAME new_table_name;
(2)增加字段
ALTER TABLE table_name ADD 字段名 数据类型;
#在表的第一个位置增加字段
ALTER TABLE table_name ADD 字段名 数据类型 FIRST;
#在表的指定字段之后增加字段
ALTER TABLE table_name ADD 字段名 数据类型 AFTER 字段名;
(3)删除字段
ALTER TABLE table_name DROP 字段名;
(4)修改字段
#修改字段名
ALTER TABLE table_name CHANGE 旧字段名 新字段名 旧数据类型;
#修改字段的数据类型
ALTER TABLE table_name MODIFY 字段名 数据类型;
#同时修改字段名和数据类型
ALTER TABLE table_name CHANGE 旧字段名 新字段名 新数据类型;
#修改字段的顺序
ALTER TABLE table_name MODIFY 字段名1 数据类型 FIRST;
ALTER TABLE table_name MODIFY 字段名1 数据类型 AFTER 字段名2;
5、表的约束
CREATE TABLE table_name(
字段名 数据类型 NOT NULL, --设置非空约束NK
字段名 数据类型 DEFAULT 默认值, --设置字段的默认值
字段名 数据类型 UNIQUE, --设置唯一约束UK,保证所有记录中该字段上的值不重复
字段名 数据类型 PRIMARY KEY, --设置主键约束PK,用某一字段来唯一标识所有记录,PK=NK+UK
……
字段名 数据类型);
CREATE TABLE table_name(
字段名 数据类型,
字段名 数据类型,
CONSTRAINT uk_字段名1 UNIQUE(字段名1), --给字段1上的唯一约束设置一个名字uk_字段名1
CONSTRAINT pk_字段名2 PRIMARY KEY(字段名2), --给字段2上的主键约束设置一个名字pk_字段名2
#多字段主键
CREATE TABLE table_name(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型,
……
CONSTRAINT pk_字段名1_字段名2 PRIMARY KEY(字段名1,字段名2)
);
#设置字段值自动增加(AUTO_INCREMENT),当为数据库表中插入新记录时,字段上的值会自动生成唯一的ID,所以该字段也经常设置为PK主键。一个数据库表中只能有一个字段使用此约束,且该字段的数据类型必须是整数类型。默认情况下该字段值从1开始增加。
CREATE TABLE table_name(
字段名 数据类型 PRIMARY KEY AUTO_INCREMENT,
字段名 数据类型,
……
字段名 数据类型
);
#设置外键约束(FOREIGN KEY,FK)设置外键约束的两个表之间具有父子关系,及子表中的某个字段的取值范围由父表决定,子表中的该字段为子表的外键。
CREATE TABLE table_name(
字段名 数据类型,
字段名 数据类型,
……
CONSTRAINT 外键约束名 FOREIGN KEY(字段名1) REFERENCES 父表名(字段名2) --外键约束名常为fk_字段名,字段名1是子表中设置外键的字段名,字段名2是父表中设置主键约束的字段名
);