ALTER 能改什么要点
- ALTER TABLE 用来修改表结构,不动表里已有数据逻辑
- 常见动作:加列、删列、改列类型、改列名、改表名
- 还能加约束、改字符集、换存储引擎
- 大表 ALTER 可能重建整张表,耗时且锁表
- 生产改表前务必先备份,并在低峰期执行
- 只留一个列的表不能再 DROP 列,会报错
ALTER 能改什么对照
| 目的 | 子句 | 是否改列名 |
|---|---|---|
| 新增列 | ADD COLUMN | 否 |
| 删除列 | DROP COLUMN | 否 |
| 改类型 | MODIFY | 否 |
| 改列名 | CHANGE | 是 |
| 改表名 | RENAME | 否 |
避坑提醒:把 ALTER 想成「动骨架」而不是「动数据」:凡是会触发表重建的操作,大表上都要格外谨慎。