Alter table alter |change |modify 区别
Alter table 語句有很多,具體可以參見MySQL 官網指導手冊 : http://dev.mysql.com/doc/refman/5.7/en/alter-table.html
這里主要是對遇到的alter,change,modify區別進行總結。
語法:
ALTER TABLE tbl_name |ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}| CHANGE [COLUMN] old_col_name new_col_name column_definition[FIRST|AFTER col_name]| MODIFY [COLUMN] col_name column_definition[FIRST | AFTER col_name]1.alter table table_name alter ...
看官網給出的語法結構,alter只能修改和刪除默認值。而且alter語句只是修改.frm 文件而不涉及表中數據。所以操作很快。
2.alter table table_name change ...
change可以修改表中字段名,類型,默認值。但是會更新表中數據,操作會很慢。根據官網的說法如此,具體的,在項目中用此語句修改時,操作很快結束,看似沒有修改表中數據。因為我用modify時結果很慢,一定更新了表中數據。或者項目中用到的是MariaDB 。有空會再做下實驗。
3.alter table table_name modify...
modify只可以修改現有字段的類型和默認值等。而且modify會更新表中數據,操作較慢。
在Alter table 之后,最好用 analyze table table_name? 更新一下index。
因此,修改默認值用alter ,修改字段名,類型直接用change
總結
以上是生活随笔為你收集整理的Alter table alter |change |modify 区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用@Autowired注解警告Fiel
- 下一篇: 抖音检测注入框架分析