{category}

Laravel - データベース

php artisan db:seed

ピーエイチピー アーティザン デービー シード(Artisanコマンド

意味 データベースシーディングを実行


php artisan db:seedとは?

このコマンドは、データベースシーダーを実行し、テストデータやデフォルトデータをデータベースに挿入します。

php artisan db:seedの具体的な使い方

全シーダーの実行

// DatabaseSeederクラスの編集
<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    public function run(): void
    {
        $this->call([
            UserSeeder::class,
            ProductSeeder::class,
        ]);
    }
}

// シーディングの実行
php artisan db:seed

👇出力結果

Seeding: DatabaseSeeder
Seeding: UserSeeder
Seeding: ProductSeeder
Seeded:  DatabaseSeeder (1.02 seconds)

このコマンドは、DatabaseSeederクラスで定義されたすべてのシーダーを実行します。まず、DatabaseSeederクラスで実行したいシーダーを指定し、その後コマンドを実行します。この例では、UserSeederとProductSeederが順番に実行されます。

特定のシーダーの実行

php artisan db:seed --class=UserSeeder

👇出力結果

Seeding: UserSeeder
Seeded:  UserSeeder (0.35 seconds)

特定のシーダークラスのみを実行する場合は、--classオプションを使用します。この例では、UserSeederのみが実行されます。

php artisan db:seedに関するよくある質問

Q. シーディングとは何ですか?
A. シーディングは、データベースに初期データやテストデータを挿入するプロセスです。開発やテスト環境で一貫したデータセットを作成するのに役立ちます。
Q. シーダーはどこに作成しますか?
A. シーダーは通常、Laravelプロジェクトの database/seeders ディレクトリに作成します。php artisan make:seeder コマンドを使用して新しいシーダーを生成できます。
Q. 本番環境でシーディングは安全ですか?
A. 本番環境でのシーディングは注意が必要です。既存のデータを上書きしたり、不要なデータを追加する可能性があるため、本番環境では通常推奨されません。必要な場合は、慎重に計画し、バックアップを取ってから実行してください。
Q. シーディング後のデータを削除できますか?
A. はい、シーディングで挿入されたデータを削除するには、通常のデータベース操作(例:テーブルの truncate や delete クエリ)を使用します。また、マイグレーションをロールバックしてテーブルを空にする方法もあります。
Q. シーダーの実行順序は制御できますか?
A. はい、DatabaseSeeder クラスの run メソッド内でシーダーを呼び出す順序を制御できます。また、個々のシーダー内でも depends プロパティを使用して依存関係を定義し、実行順序を制御することができます。

php artisan db:seedが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Laravelのphp artisan db:seedやphp artisan serve、php artisan tinker、php artisan make:mail、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Laravelを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Laravelはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

php artisan serve

開発用サーバーを起動

種類: 開発

php artisan tinker

対話型のPHPコンソールを起動

種類: 開発

php artisan make:mail

新しいメールクラスを作成

種類: メール

@isset

変数が存在するか確認

種類: 制御構造

@yield

コンテンツの挿入位置を指定

種類: レイアウトとコンポーネント