<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                本節涉及以下目錄或文件: > * database/migrations [TOC] ## 遷移文件創建 ### 創建遷移文件:Artisan 命令 `make:migration` ~~~shell $ php artisan make:migration create_users_table ~~~ >[info] 所有創建的遷移文件都被統一放在 `database/migrations` 目錄中。 > 每個遷移文件的名稱都包含了一個 `時間戳`,以便讓 Laravel 確認遷移的順序。 ### 創建選項 #### 指定數據表的名稱:`--table` 和 `--create` 選項 ~~~shell $ php artisan make:migration create_users_table --create=users $ php artisan make:migration add_votes_to_users_table --table=users ~~~ #### 指定自定義輸出路徑: `--path` 選項 >[warning] 提供的路徑必須是相對于應用程序的基本路徑。 ## 遷移文件結構 打開 `database/migrations` 文件夾可以看到,Laravel 已默認創建好了兩個遷移文件: * database/migrations/2014_10_12_000000_create_users_table.php —— 用于構建 `users` 用戶表 * database/migrations/2014_10_12_100000_create_password_resets_table.php —— 用于構建密碼重置表 > 打開遷移實例 `database/migrations/2014_10_12_000000_create_users_table.php` ~~~php <?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateUsersTable extends Migration { /** * Run the migrations. * 運行數據庫遷移 * @return void */ public function up() { Schema::create('users', function (Blueprint $table) { $table->increments('id'); // 由 increments 方法創建了一個 integer 類型的自增長 id。 $table->string('name'); // 由 string 方法創建了一個 name 字段,用于保存用戶名稱。 $table->string('email')->unique(); // 由 string 方法創建了一個 email 字段,且在最后指定該字段的值為唯一值,用于保存用戶郵箱。 $table->string('password', 60); // 由 string 方法創建了一個 password 字段,且在 string 方法中指定保存的值最大長度為 60,用于保存用戶密碼。 $table->rememberToken(); // 由 rememberToken 方法為用戶創建一個 remember_token 字段,用于保存『記住我』的相關信息。 $table->timestamps(); // 由 timestamps 方法創建了一個 created_at 和一個 updated_at 字段,分別用于保存用戶的創建時間和更新時間。 }); } /** * Reverse the migrations. * 回滾數據庫遷移 * @return void */ public function down() { Schema::dropIfExists('users'); } } ~~~ 可見里面定義了一個 `CreateUsersTable` 類,并繼承自 `Migration` 基類。 `CreateUsersTable` 有兩個方法: 1. 運行遷移時調用的 `up` 方法:為數據庫添加新的數據表、字段或索引。 2. 回滾遷移時調用的`down` 方法: `up` 方法的逆操作。 可以在這兩個方法中使用 [結構生成器](database/schema.md) 來創建或修改數據表。 ## 遷移文件運行 ### 運行所有未運行過的遷移:Artisan 命令 `migrate` ~~~shell $ php artisan migrate ~~~ #### 強制運行:`--force` 選項 一些遷移的操作是具有破壞性的,它們可能會導致數據丟失。 為了保護線上環境的數據庫,系統會在這些命令被運行之前顯示確認提示。 若要忽略此提示并強制運行命令,則可以使用 `--force` 標記: ~~~shell $ php artisan migrate --force ~~~ ## 遷移文件回滾 ### 回滾最后一次遷移:Artisan 命令 `migrate:rollback` ~~~shell $ php artisan migrate:rollback ~~~ >[warning] 此命令是對上一次執行的「批量」遷移回滾,其中可能包括多個遷移文件。 #### 限制步數:`--step` 選項 ~~~shell $ php artisan migrate:rollback --step=5 ~~~ > 此命令將會回滾最后的 5 個遷移。 ### 回滾所有的遷移:Artisan 命令 `migrate:reset` ~~~shell $ php artisan migrate:reset ~~~ ### 回滾后重新運行遷移:Artisan 命令 `migrate:refresh` ~~~shell $ php artisan migrate:refresh // 刷新數據庫結構并執行數據填充 $ php artisan migrate:refresh --seed ~~~ >[info] 此命令不僅會回滾數據庫的**所有**遷移,還會接著運行 `migrate` 命令,所以可以有效的重新創建整個數據庫。 #### 限制步數:`--step` 選項 ~~~shell $ php artisan migrate:refresh --step=5 ~~~ > 回滾并再遷移最后的 5 個遷移。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看