Laravelのマイグレーションで使えるデータ型まとめ
マイグレーションファイルをいじるときに結構間違えたり、忘れたりするのでメモします。
書き方サンプル: $table->increments('id');
- increments('id') =「符号なしINT」を使用した自動増分ID(主キー)
- binary('カラム名') = バイナリデータカラム
- boolean('カラム名') = 真偽値カラム
- char('カラム名', 長さ) = 長さを指定する文字列カラム
- date('カラム名') = 日付カラム
- time('カラム名') = 時間カラム
- dateTime(カラム名) = 日時カラム
- double('カラム名', 桁数, 小数点以下桁数) = ○桁で小数点以下×桁の小数カラム
- enum('カラム名', ['定数', '定数']) = ENUMカラム
- integer('カラム名') = 数値データカラム
- json('カラム名') = JSONフィールドカラム
- timestamp('カラム名') = TIMESTAMPカラム
- timestamps() = created_atとupdate_atカラム
- nullableTimestamps() = NULL値を許す以外、timestamps()と同じ
- string('カラム名') = VARCHARカラム
- string('カラム名', 長さ) = 長さ指定のVARCHARカラム
- text('カラム名') = TEXTカラム
入力必須出ない場合はそれぞれのデータ型の後に ->nullable(); を入れると、入力必須ではなくなります。