この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:guest
更新日時:2019-04-16 02:13:24

タイトル: Incorrect column specifier for column 'カラム名'
SEOタイトル: 【MySQLエラー】Incorrect column specifier for column 'カラム名'

この記事の要点
  • MySQL の Incorrect column specifier for column エラー
  • 原因: AUTO_INCREMENT を付けられないデータ型に AUTO_INCREMENT を付与している
  • AUTO_INCREMENT を許容するのは 整数系(INT / BIGINT 等)のみ。DECIMAL / VARCHAR には付けられない
  • 対処: ALTER TABLE ... MODIFY カラム名 INT AUTO_INCREMENT のようにデータ型も同時に直す

 

エラー内容

Incorrect column specifier for column 'カラム名'

 

発生条件/原因/対処法

ALTER TABLE文でAUTO_INCREMENTを付与した際に発生するエラー。(他のケースもある場合は追記)

対象カラムのデータ型がintではなくdecimalであったりAUTO_INCREMENTの許容するデータ型ではない場合に発生する。

以下のようにAUTO_INCREMENT付与のタイミングでデータ型も修正すればよい。

ALTER TABLE テーブル名 MODIFY `カラム名` int(10) NOT NULL AUTO_INCREMENT;