ฉันพยายามที่จะสร้างกุญแจต่างประเทศใน Laravel แต่เมื่อฉันย้ายตารางของฉันโดยใช้artisan
ฉันโยนข้อผิดพลาดต่อไปนี้:
[Illuminate\Database\QueryException]
SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL
: alter table `priorities` add constraint priorities_user_id_foreign foreign
key (`user_id`) references `users` (`id`))
รหัสการโยกย้ายของฉันเป็นเช่นนั้น:
ไฟล์การโยกย้ายลำดับความสำคัญ
public function up()
{
//
Schema::create('priorities', function($table) {
$table->increments('id', true);
$table->integer('user_id');
$table->foreign('user_id')->references('id')->on('users');
$table->string('priority_name');
$table->smallInteger('rank');
$table->text('class');
$table->timestamps('timecreated');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schema::drop('priorities');
}
ไฟล์การโยกย้ายผู้ใช้
public function up()
{
//
Schema::table('users', function($table)
{
$table->create();
$table->increments('id');
$table->string('email');
$table->string('first_name');
$table->string('password');
$table->string('email_code');
$table->string('time_created');
$table->string('ip');
$table->string('confirmed');
$table->string('user_role');
$table->string('salt');
$table->string('last_login');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
//
Schemea::drop('users');
}
ความคิดใด ๆ เกี่ยวกับสิ่งที่ฉันทำผิดฉันต้องการทำให้ถูกต้องในขณะนี้เนื่องจากฉันมีตารางจำนวนมากที่ฉันต้องสร้างเช่นผู้ใช้ลูกค้าโครงการงานสถานะสถานะลำดับความสำคัญประเภททีม เป็นการดีที่ฉันต้องการสร้างตารางที่เก็บข้อมูลนี้ด้วยคีย์ต่างประเทศ, i .. e clients_project
และproject_tasks
อื่น ๆ
หวังว่าใครบางคนสามารถช่วยฉันในการเริ่มต้น