Omi*_*ari 3 php laravel eloquent laravel-5 lumen
我想在种子之前截断我的用户表。我这样做:
DatabaseSeeder.php :
<?php
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class DatabaseSeeder extends Seeder
{
public function run()
{
App\User::truncate();
factory(App\User::class,1)->create();
}
}
Run Code Online (Sandbox Code Playgroud)
然后运行php artisan db:seed并出现错误:
In Connection.php line 664:
SQLSTATE[42000]: Syntax error or access violation: 1701 Cannot truncate a table referenced in a foreign key constra
int (`mr_musicer`.`dislikes`, CONSTRAINT `dislikes_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `mr_musicer`
.`users` (`id`)) (SQL: truncate `users`)
In Connection.php line 458:
SQLSTATE[42000]: Syntax error or access violation: 1701 Cannot truncate a table referenced in a foreign key constra
int (`mr_musicer`.`dislikes`, CONSTRAINT `dislikes_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `mr_musicer`
.`users` (`id`))
Run Code Online (Sandbox Code Playgroud)
我现在想知道为什么我不能截断我的用户表!
存在外键问题,表正试图提醒您。如果您无论如何都想截断表格。
Schema::disableForeignKeyConstraints();
// ... Some Truncate Query
Schema::enableForeignKeyConstraints();
Run Code Online (Sandbox Code Playgroud)
不要忘记使用:
use Illuminate\Support\Facades\Schema;
| 归档时间: |
|
| 查看次数: |
2854 次 |
| 最近记录: |