第九章:第13节 MySQL基础篇——表的修改与删除

更新于:2017-07-25 14:35:53

修改表:


一个表设计好了不是说就永远不变了,可能后期项目需求有所改动,那我们就需要对表做下改动。直接新建表不划算,里面的数据不能丢弃吧。


修改表主要是对表的某个(些)字段和索引做增删改操作。


SQL语句有:


添加字段:alter table 表名 add [column] 新字段名 字段类型 [字段属性列表];

修改字段(并可改名):alter table 表名 change [column] 旧字段名 新字段名 新字段类型 [新字段属性列表];

修改字段(只改属性):alter table 表名 modify [column]       字段名 新字段类型 [新字段属性列表];

修改字段名:灰常灰常抱歉,没有单纯修改字段名这个功能!

删除字段:alter table 表名 drop [column] 字段名;

添加普通索引:alter table 表名 add index [索引名] (字段名1[,字段名2,...]);

添加主键索引(约束):alter table 表名 add primary key (字段名1[,字段名2,...]);

添加外键索引(约束):alter table 表名1 add foreign key (字段1,[,字段名2,...]) references 表名2(字段1,[,字段名2,...]);

添加唯一索引(约束):alter table 表名 add unique (字段名1[,字段名2,...]);

添加字段默认值(约束):alter table 表名 alter [column] 字段名 set default 默认值;

删除字段默认值(约束):alter table 表名 alter [column] 字段名 drop default;

删除主键:alter table 表名 drop primay key;#每一个表最多只能有一个主键

删除外键:alter table 表名 drop foreign key 外键名;

删除索引:alter table 表名 drop index 索引名;

修改表名:alter table 表名 rename [to] 新表名;

修改表选项:alter table 表名 选项名1=选项值1,选项名2=选项值2,...;


都没有什么难度,做下演示:


1.png

添加一个f4字段:


1.png


成功了

1.png


注:上面的图可以在Navicat里鼠标选中表,鼠标右键-》对象信息 看到。


修改f4字段:


1.png


1.png


删除f4字段:


1.png


1.png


删除表:


drop   table  [if  exists]  表名;


和删除数据库一样,使用的关键字是“drop”


除了修改表和删除表,表还有几个其他的SQL语句:


显示所有表show  tables:

显示表结构desc  表名;

显示表的创建语句: show  create  table  表名;。

从已有表复制表结构:create table [if not exists] 新表名 like 原表名;

从已有表复制表结构:create table [if not exists] 新表名 select * from 原表名 where 1<>1;(不推荐)


1.png