この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:T
更新日時:2018-03-26 08:51:32

タイトル: マイグレーション(テーブル定義)

Laravelのデータベースマイグレーションという機能を使用すればphpファイル上でテーブル定義をすることが出来ます。

 

テーブルの作成

データベースのマイグレーション機能を用いて「task」テーブルを作成してみましょう。

ルートディレクトリに移動して以下のコマンドを実行します。

php artisan make:migration create_tasks_table --create=tasks

 

database\migrations」配下にファイルが新規作成されたことを確認できます。

ファイルの中身を見てみましょう。

public function up()
    {
        Schema::create('tasks', function (Blueprint $table) {
            $table->increments('id');
            $table->timestamps();
        });
    }

この関数内にある'id'とはtasksテーブルのカラムです。

 

テーブルの定義変更

tasksテーブルにカラムを追加してみましょう。

以下の例ではstring型のnameというカラムを追加しています。

public function up()
    {
        Schema::create('tasks', function (Blueprint $table) {
            $table->increments('id');

            $table->string('name');
            $table->timestamps();
        });
    }

 

ファイルを書き換えただけではテーブルの構造は変化しません。

ファイルを保存して以下のコマンドを実行しましょう。

php artisan migrate

 

以下のエラーが発生した場合はこちらを参照。

SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' 

 

カラムの定義

定義できるカラムの型の一覧等はこちらを参照。