Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Laravel 4 Migracje wyrzuca błąd 1072

Musisz utworzyć kolumnę związaną z kluczem obcym:

class CreateAreasTable extends Migration {

 /**
  * Run the migrations.
  *
  * @return void
  */
  public function up()
  {
    // Creates the cemeteries table
    Schema::create('areas', function($table)
    {
        $table->engine = 'InnoDB';
        $table->increments('id');

        $table->integer('region_id')->unsigned();
        $table->foreign('region_id')->references('id')->on('regions');

        $table->string('name', 160)->unique();
        $table->timestamps();

    });
  }
}

Czasami (w zależności od serwera bazy danych) będziesz musiał utworzyć klucze obce w dwóch krokach:

class CreateAreasTable extends Migration {

 /**
  * Run the migrations.
  *
  * @return void
  */
  public function up()
  {
    // Create the table and the foreign key column
    Schema::create('areas', function($table)
    {
        $table->engine = 'InnoDB';
        $table->increments('id');

        $table->integer('region_id')->unsigned();

        $table->string('name', 160)->unique();
        $table->timestamps();

    });

    // Create the relation
    Schema::tabe('areas', function($table)
    {
        $table->foreign('region_id')->references('id')->on('regions');
    });
  }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cele MySQL w przepływie pracy Luigi

  2. Jak wykryć zakleszczenia w Mysql/innodb?

  3. Jak wstawić ukryte dane pola do bazy danych za pomocą php

  4. Największa wartość z wielu kolumn z nazwą kolumny?

  5. MySQL nie wstawia odwrotnego ukośnika