日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php 值转移,迁移与数据填充 - Migrations Seeding

發布時間:2024/5/15 php 82 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 值转移,迁移与数据填充 - Migrations Seeding 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

遷移與數據填充

介紹

遷移是一種數據庫的版本控制。可以讓團隊在修改數據庫結構的同時,保持彼此的進度一致。遷移通常會和 結構生成器 一起使用,可以簡單的管理數據庫結構。

建立遷移文件

使用 Artisan CLI 的 make:migrate 命令建立遷移文件:

php artisan make:migration create_users_table

遷移文件會建立在 database/migrations 目錄下,文件名會包含時間戳記,在執行遷移時用來決定順序。

你也可以在建立遷移命令加上 --path 參數。路徑要相對于應用程序所在的根目錄。

php artisan make:migration foo --path=app/migrations

--table 和 --create 參數可以用來指定數據表名稱,以及遷移文件是否要建立新的數據表。

php artisan make:migration add_votes_to_users_table --table=users

php artisan make:migration create_users_table --create=users

執行遷移

執行所有未執行的遷移

php artisan migrate

注意: 如果在執行遷移時發生「class not found」錯誤,試著先執行composer dump-autoload 命令后再進行一次。

在線上環境 (Production) 中強制執行遷移

有些遷移操作是具有破壞性的,意味著可能讓你遺失原本保存的數據。為了防止你在上線環境執行到這些遷移命令,你會被提示要在執行遷移前進行確認。加上--force 參數執行強制遷移:

php artisan migrate --force

回滾遷移

回滾上一次的遷移

php artisan migrate:rollback

回滾所有遷移

php artisan migrate:reset

回滾所有遷移并且再執行一次

php artisan migrate:refresh

php artisan migrate:refresh --seed

數據填充

Laravel 可以簡單的使用 seed 類,填充測試數據到數據庫。所有的 seed 類放在database/seeds 目錄下。可以使用任何你想要的類名稱,但是應該遵守某些大小寫規范,如UserTableSeeder 之類。默認已經有一個DatabaseSeeder 類。在這個類里,使用call 方法執行其他的 seed 類,讓你控制填充的順序。

Seed 類例子

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'));

}

}

要執行數據填充,可以使用 Artisan CLI 的db:seed 命令:

php artisan db:seed

默認db:seed 命令會執行DatabaseSeeder,可以使用它來調用其他 seed 類,不過,也可以使用--class 參數指定要單獨執行的類:

php artisan db:seed --class=UserTableSeeder

你也可以使用migrate:refresh 命令填充數據,它會回滾并且再次執行所有遷移:

php artisan migrate:refresh --seed

總結

以上是生活随笔為你收集整理的php 值转移,迁移与数据填充 - Migrations Seeding的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。