How to Remove Column from Table in Laravel Migration? (ok)

https://www.itsolutionstuff.com/post/how-to-remove-column-from-table-in-laravel-migrationexample.html

C:\xampp\htdocs\reset\database\migrations\2022_05_20_180539_create_posts_table.php

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreatePostsTable extends Migration {
  /**
   * Run the migrations.
   *
   * @return void
   */
  public function up() {
    Schema::create('posts', function (Blueprint $table) {
      $table->id();
      $table->string('title');
      $table->text('body');
      $table->boolean('is_publish')->default(0);
      $table->timestamps();
    });
  }
  /**
   * Reverse the migrations.
   *
   * @return void
   */
  public function down() {
    Schema::dropIfExists('posts');
  }
}

C:\xampp\htdocs\reset\database\migrations\2022_05_20_180718_change_posts_table_column.php

<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class ChangePostsTableColumn extends Migration {
  /**
   * Run the migrations.
   *
   * @return void
   */
  public function up() {
    // Schema::table('posts', function (Blueprint $table) {
    //   $table->dropColumn('body'); // Remove Column using Migration
    // });
    // Schema::table('posts', function (Blueprint $table) {
    //   $table->dropColumn(['body', 'title']); // Remove Multiple Column using Migration
    // });
    // if (Schema::hasColumn('posts', 'body')) {
    //   Schema::table('posts', function (Blueprint $table) {
    //     $table->dropColumn('body'); // Remove Column If Exists using Migration
    //   });
    // }
  }
  /**
   * Reverse the migrations.
   *
   * @return void
   */
  public function down() {
    //
  }
}

Tương ứng 3 trường hợp là 3 bức ảnh

How to Remove Column from Table in Laravel Migration?

Hi Artisan,

In this quick example, let's see laravel migration remove column. This post will give you simple example of how to drop column in laravel migration. i would like to show you remove column laravel migration. We will use drop field laravel migration.

you can easily drop column from database table in laravel 6, laravel 7, laravel 8 and laravel 9.

I will give you some example that way you can easily remove column using migration. let's see bellow example that will help you.

1) Remove Column using Migration

2) Remove Multiple Column using Migration

3) Remove Column If Exists using Migration

1) Remove Column using Migration

<?php  use Illuminate\Support\Facades\Schema;use Illuminate\Database\Schema\Blueprint;use Illuminate\Database\Migrations\Migration;  class ChangePostsTableColumn extends Migration{    /**     * Run the migrations.     *     * @return void     */    public function up()    {        Schema::table('posts', function (Blueprint $table) {            $table->dropColumn('body');        });    }      /**     * Reverse the migrations.     *     * @return void     */    public function down()    {              }}

2) Remove Multiple Column using Migration

<?php  use Illuminate\Support\Facades\Schema;use Illuminate\Database\Schema\Blueprint;use Illuminate\Database\Migrations\Migration;  class ChangePostsTableColumn extends Migration{    /**     * Run the migrations.     *     * @return void     */    public function up()    {        Schema::table('posts', function (Blueprint $table) {            $table->dropColumn(['body', 'title']);        });    }      /**     * Reverse the migrations.     *     * @return void     */    public function down()    {              }}

3) Remove Column If Exists using Migration

Read Also: How to Change Column Name and Data Type in Laravel Migration?

<?php  use Illuminate\Support\Facades\Schema;use Illuminate\Database\Schema\Blueprint;use Illuminate\Database\Migrations\Migration;  class ChangePostsTableColumn extends Migration{    /**     * Run the migrations.     *     * @return void     */    public function up()    {        if (Schema::hasColumn('posts', 'body')){              Schema::table('posts', function (Blueprint $table) {                $table->dropColumn('body');            });        }    }      /**     * Reverse the migrations.     *     * @return void     */    public function down()    {              }}

I hope it can help you...

Last updated