本教程是 Laravel 手冊的一部分。您可以從 https://flaviocopes.com/access/ 下載。

遷移非常適合處理資料庫的變更,這樣您就可以應用這些變更,並在需要恢復到先前狀態時回滾數據。

從終端機中停止 Laravel 伺服器,然後運行以下命令來創建一個新的遷移,我們將使用它來創建我們需要使用的資料庫表:

php artisan make:migration initial_table_creation

此命令在 database/migrations 資料夾中創建了 2023_05_11_080724_initial_table_creation.php 文件(日期和時間對於您而言會有所變化)。

注意,還有其他由 Laravel 框架自身添加的遷移,用於驗證系統。

但是,我們專注於創建一個新的表,讓我們將其稱為 dogs

進入我們剛剛建立的遷移的 up() 函數。

讓我們創建一個 dogs 表,包含 3 列,一個 id、一個 name 字符串,以及時間戳工具列(created_atupdated_at),我們將在後面看到。

Schema::create('dogs', function (Blueprint $table) {
    $table->id();
    $table->string('name');
    $table->timestamps();
});

現在從終端機運行以下命令:

php artisan migrate

Laravel 將應用尚未應用的遷移,這在此時指的是您在 migrations 資料夾中看到的所有遷移:

如果您使用類似 TablePlus(免費版本,支持所有操作系統)的數據庫可視化工具打開 database/database.sqlite 文件,您將看到新創建的表,包括我們定義的表:

如果您在遷移中犯了錯誤,您可以使用以下命令回滾遷移中的任何更改:

php artisan migrate:rollback

這將回滾您對數據庫做出的最新更改。

有關遷移的更多信息,請參閱官方遷移指南