Laravel5 Database Migrations & Seeding記錄
Laravel在數據庫的建立上是非常的簡單…
可參考Here
數據遷移
檢查自己的遷移數據
通常在專案的目錄下app/database/migrations 目錄下會有如下的檔案:
建立遷移
執行
php artisan make:migration create_articles_table --create="articles"
變更遷移內容
將可以在app/database/migrations目錄看到新生成的文件,打開文件你可以自行調整資料表的內容如下,存檔後可執行數據遷移。
class CreateArticlesTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create(‘articles‘, function(Blueprint $table)
{
$table->increments(‘id‘);
$table->timestamps(); // 可以在這裡添加其他的數據內容
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop(‘articles‘);
}
}
運行數據遷移
當執行了底下的命令後將與數據庫做異動同步檢查,數據庫不存在則建立,不同則同步異動。
然後再進入phpMyAdmin中可以看到該數據庫已經建立了。
如果進一步執行
php artisan|more
可進一步了解Migrate.
有些遷移是具有破壞性的,造成數據移失,可以加上–force參數強制執行。
php artisan migrate --force
遷移回復上一動作
php artisan migrate:rollback
遷移回復全部
php artisan migrate:reset
遷移回復全部再執行一次
php artisan migrate:refresh
php artisan migrate:refresh --seed
數據填充
使用seed類來建立數據也是輕鬆的一件事,它放在app/database/seeds目錄。
填充例子
class DatabaseSeeder extends Seeder {
public function run()
{
$this->call('UserTableSeeder');
$this->command->info('User table seeded!');
}
}
class UserTableSeeder extends Seeder {
public function run()
{
DB::table('users')->delete();
User::create(array('email' => 'foo@bar.com'));
}
}
執行填充
php artisan db:seed
它會執行所有在app/database/seeds所有的數據填充,也可以使用–class來指定執行單項的類:
php artisan db:seed --class=UserTableSeder