Blueprintのinteger()
メソッドの第2引数は$autoIncrement
で、意味は「そのカラムを自動インクリメントの主キーとする」です。(APIドキュメント)
たぶん桁数指定のつもりなのではないかと思いますがinteger()
には桁数指定の機能はありません。かわりにそれぞれバイト数が異なるtinyInteger()
,smallInteger()
,mediumInteger()
,bigInteger()
が用意されています。
ということで、
php
1$table->integer('DEL_FLG', '1')->default(0);
は$autoIncrement
に'1'
を指定していて、文字列'1'
は真と解釈されますから自動インクリメントかつ主キーにするため上記のようなSQL文が生成されます。USER_CD
についても同様です。
また質問にはないですが、COMMENT_CDに使っているincrements()
もそのカラムを主キーにするという意味を含んでいますので、冒頭の$table->primary(...)
で行っている複合主キーの設定と衝突すると思います。Blueprintは自動インクリメントにするだけで主キーにはしないAPIは提供していないので、生のSQLで書くなどする必要があるでしょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/04 17:30