

既存カラムのデフォルト値をNULLへ変更したいと思い、phpMyAdminのSQL欄で

[code]

    ALTER TABLE `t` ALTER COLUMN `hoge` SET DEFAULT NULL;
    
[/code]

を実行したら、構文エラーとなりました。

> 新しいステートメントが見つかりましたが、それとその前の間に区切り文字がありません

* * *

次に下記を試したら、期待通り実行できたのですが、

[code]

    ALTER TABLE `t` CHANGE `hoge` `hoge` INT(11) NULL DEFAULT NULL;
    
[/code]

「ALTER COLUMN」と「CHANGE」は、どう使い分けるのですか？  
既存カラムのデフォルト値を設定変更する場合は、「ALTER COLUMN SET DEFAULT」を使用するものとばかり思っていたのですが、違うのですか？

環境  
MySQL5.7


CC BY-SA 4.0
2021-09-01T10:30:11.197
81162
2021-09-01T10:30:11.197
7886
question
mysql
既存カラムのデフォルト値をNULLへ変更したい