赞
踩
修改表指的是修改数据库中已经存在的数据表的结构。MySQL使用ALTER TABLE语句修改表、常用的修改表的操作有:修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置,更改表的存储引擎,删除表的外键约束等。
MySQL是通过ALTER TABLE语句进行表结构的修改
ALTER TABLE<旧表名>RENAME[TO]<新表名>
其中TO为可选参数,使用与否均不影响结果
修改字段的数据类型,就是把字段的数据类型转换成另一种数据类型:
ALTER TABLE<表名>MODIFY<字段名><数据类型>
ALTER TABLE <表名> CHANGE<旧字段名><新字段名><新数据类型>;
CHANGE也可以只修改数据类型,实现和MODIFY同样的效果,但是由于语法的限制,新旧字段名都不能省略。
ALTER TABLE <表名> ADD <新字段名> <数据类型>
[约束条件][FIRST|AFTER 已存在的字段名]
如果不指定FIRST或AFTER这两个参数,则默认将新添加的字段设置为数据表的最后列
ALTER TABLE <表名> DROP <字段名>
对于一个数据表来说,在创建的时候,字段在表中排列顺序就已经确定了,但表的结构并不是完全不可以改变的,可以通过ALTER TABLE来改变表中字段的相对位置。
ALTER TABLE<表名>MODIFY<字段1><数据类型>FIRST|AFTER<字段2>
关于数据引擎的介绍请参考另一篇博文MySQL数据库的基本操作
ALTER TABLE <表名>ENGINE= <更改后的存储引擎名>
在修改之前,可以先使用SHOW CREATE TABLE查看表当前的存储引擎。
对于数据库中定义的外键,如果不在需要,可以将其删除。外键删除之后,主从表间关系就会解除。
ALTER TABLE <表名> DROP FOREIGN KEY<外键约束名>
删除数据表就是讲数据库中已经存在的表从数据库中删除。在删除表的同时,表的定义和所有的数据均会被删除。在删除操作前,最好对表中的数据做个备份,以免造成无法挽回的后果。
使用DROP TABLE可以一次删除一个或多个没有被其他表关联的数据表。
DROP TABLE[IF EXISTS] 表1,表2,... 表n
数据表之间存在外键关联的情况下,父表不能被直接删除,因为那样会破坏表的参照完整性。如果必要删除,可以先删除与它关联的子表,再删除父表,只是这样同时删除了两个表中的数据。所以,可以先删除相关联的外键约束,然后就可以执行删除操作。
先删除外键约束
ALTER TABLE <表名> DROP FOREIGN KEY<外键约束名>
再删除表
DROP TABLE <表名>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。