2017-04-17 14 views
0

マイグレーションを使用してnullable()を列に追加します。データベース移行notnull()?

class ChangeUgIdCanNull extends Migration 
{ 
    public function up() 
    { 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->dropForeign(['ug_id']); 
    }); 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->dropIndex(['ug_id']); 
    }); 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->integer('ug_id')->unsigned()->index()->nullable()->change(); 
     $table->foreign('ug_id')->references('ug_id') 
      ->on('user_group')->onDelete('cascade'); 
    }); 
    } 

    public function down() 
    { 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->dropForeign(['ug_id']); 
    }); 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->dropIndex(['ug_id']); 
    }); 
    Schema::table('service_request_step', function (Blueprint $table) { 
     $table->integer('ug_id')->unsigned()->index()->change(); 
     $table->foreign('ug_id')->references('ug_id') 
      ->on('user_group')->onDelete('cascade'); 
    }); 
    } 
} 

私はphp artisan migrateを使用しても問題ありません。 しかし、私がしたいときphp artisan migrate:rollback.私のデータベースの 'ug_id'列にはまだnullがあります。 は、私はあなたがnullable(false)を使用することができます$table->integer('ug_id')->unsigned()->index()->notnull()->change();

Laravel Version: 5.4.19 
PHP Version: 7.1.3 
Database Driver & Version: 10.2.4-MariaDB 

答えて

1

のようないくつかの機能を持っていました。 コードは

$table->integer('ug_id')->unsigned()->index()->nullable(false)->change(); 
+1

Wowwwである必要があります。あれは。ありがとうございました。 – ThunderBirdsX3

関連する問題