Laravel マイグレーション 5.8.x

スポンサーリンク
WEB開発

マイグレーション生成

php artisan make:migration create_hoge_table

マイグレーションはdatabase/migrationsフォルダに設置されます。マイグレーションの実行順をフレームワークに知らせるため、名前にタイムスタンプが含まれています。

https://readouble.com/laravel/5.8/ja/migrations.html

マイグレーションの実行

php artisan migrate

全テーブルを削除しマイグレーション実行

php artisan migrate:fresh

テーブル作成時のカラム設定

コマンド説明
$table->bigIncrements(‘id’); 符号なしBIGINTを使用した自動増分ID(主キー)
$table->bigInteger(‘votes’); BIGINT
$table->char(‘name’, 100); オプションの文字長を指定するCHARカラム
$table->date(‘created_at’); DATEカラム
$table->text(‘description’); TEXTカラム
$table->time(‘sunrise’); TIMEカラム
$table->timestamp(‘added_on’); TIMESTAMPカラム
$table->timestamps(); NULL値可能なcreated_atとupdated_atカラム追加
$table->uuid(‘id’); UUIDカラム

カラムの修飾子を設定

メソッド説明
->comment(‘my comment’) カラムにコメント追加(MySQL/PostgreSQLのみ)
->default($value) カラムのデフォルト(default)値設定
->nullable($value = true) (デフォルトで)NULL値をカラムに挿入する
->nullable() NULL許容
->useCurrent() TIMESTAMPカラムのデフォルト値をCURRENT_TIMESTAMPに指定

カラム名の変更

Schema::table('users', function (Blueprint $table) {
    $table->renameColumn('from', 'to');
});

インデックスの設定

コマンド説明
$table->primary(‘question_id’);主キーを設定する
$table->primary([‘id’, ‘parent_id’]); 主キーを複数設定する
$table->unique(‘email’); uniqueキー追加
$table->index(‘state’); 基本的なインデックス追加

暇な時間にU-NEXT

今なら無料1ヶ月無料トライアル600円分の有料コンテンツを使えるチャンス!

見放題作品が31日間無料で視聴可能最新作はレンタル配信!

600円分のポイントプレゼント!DVD・ブルーレイよりも先行配信の最新作、放送中ドラマの視聴や最新コミックの購入に使用可能

 

追加料金なく、80誌以上の雑誌が読み放題

WEB開発
スポンサーリンク
uediveをフォローする
SEの休日

コメント

タイトルとURLをコピーしました