📜  如何在表 laravel 中添加新列 - PHP (1)

📅  最后修改于: 2023-12-03 15:38:41.906000             🧑  作者: Mango

如何在表 Laravel 中添加新列

在 Laravel 中,只需使用迁移(Migration)即可轻松地添加新列到现有表中。本文将介绍如何使用 Laravel Migration 进行数据库表结构更改,以添加新列为例。

步骤
第一步:创建 Migration

运行以下命令创建新的 Migration:

php artisan make:migration add_new_column_to_table --table=table_name

table_name 是你需要添加新列的表格名称。生成的 Migration 文件将位于 database/migrations 目录中。在该文件中,Laravel 将为你创建一个基本的 Migration 结构:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddNewColumnToTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('table_name', function (Blueprint $table) {
            // 这里添加新列的代码
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('table_name', function (Blueprint $table) {
            // 这里删除新列的代码
        });
    }
}
第二步:添加新列

up 方法中,你可以使用 $table->type('column_name') 方法添加新列。例如,如果你想在 users 表中添加一个名为 age 的整数列,你可以这样写:

Schema::table('users', function (Blueprint $table) {
    $table->integer('age');
});

如果你需要添加其他列属性,例如默认值、非空等等,请在添加新列之后链式调用方法。示例如下:

Schema::table('users', function (Blueprint $table) {
    $table->integer('age')->default(18)->nullable(false);
});
第三步:运行 Migration

运行以下命令,将 Migration 应用于数据库:

php artisan migrate

这将会创建一个新的数据库迁移记录,该记录将永久性地修改数据库结构。此后,可以通过该 Migration 文件进行回滚或迁移。同样的 Migration 文件可以运行 up 方法以添加新列,也可以运行 down 方法以删除新列。

总结

总而言之,以下是在 Laravel 中添加新列的步骤:

  1. 通过 php artisan make:migration 命令生成 Migration 文件;
  2. up 方法中使用 $table->type('column_name') 方法添加新列;
  3. 运行 php artisan migrate 命令,应用 Migration 文件并添加新列。

祝你好运,愉快地编程!