laravel-migrations - 当 create table 语句中存在 autoIncrement、Unique key 和 Forgein key 时,Laravel 迁移失败
问题描述
如果我在同一个创建表语句中有一个 autoIncrement 列、唯一键约束和一个外键,则在运行 Laravel 迁移时,我遇到了错误。我在下面发布了一个迁移代码,但是对于所有具有这种组合的迁移,我都收到了这个错误
SQLSTATE[HY000] [2002] 连接被拒绝(SQL:alter table
table_name
add uniquefield_options_label_unique
(label
))
Schema::create('field_options', function (Blueprint $table) {
$table->increments('id');
$table->string('label')->unique();
$table->string('value');
$table->unsignedBigInteger('parent_id')->nullable();
$table->unsignedBigInteger('field_id');
$table->foreign('field_id')->references('id')->on('fields')->onDelete('cascade');
$table->timestamps();
$table->softDeletes($column = 'deleted_at', $precision = 0);
});
解决方案
推荐阅读
- excel - VBA 替换 Excel 到 Word
- django - 多个 HTML 选项选择不起作用
- html - 如何在 chm 中提供 dxf 的下载链接
- python - 我想更改一个组件的列表列表
- flutter - 具有垂直文本颤动的 HTML 插件
- linux - 将文件读取到变量,然后用转义字符替换控制字符
- javascript - 如何使用 Enzyme/Jest 在 ComponenWillMount 中测试逻辑
- java - onAnimationEndListener 的可靠性如何?
- amazon-web-services - 无法描述我从 aws cli 到 aws 帐户的密钥
- python - RC4 加密不会产生预期的输出