移徙情况如下:
Schema::dropIfExists('personal_access_tokens');
Schema::create('personal_access_tokens', function (Blueprint $table) {
$table->id();
$table->morphs('tokenable');
$table->string('name');
$table->string('token', 64)->unique();
$table->text('abilities')->nullable();
$table->timestamp('last_used_at')->nullable();
$table->timestamp('expires_at')->nullable();
$table->timestamps();
$table->index(['tokenable_type', 'tokenable_id']);
});
结果出现以下错误:
'personal_access_tokens_tokenable_type_tokenable_id_index‘:语法错误或访问冲突: 1061重复密钥名
(SQL: alter
personal_access_tokens
add indexpersonal_access_tokens_tokenable_type_tokenable_id_index
(tokenable_type
,tokenable_id
))
为什么会发生这种情况,我该如何解决这个问题?
发布于 2022-11-19 09:23:10
您首先需要删除创建的索引tokenable_type
和tokenable_id
,以便重新创建表。
Schema::table('personal_access_tokens', function ($table) {
$table->dropIndex(['tokenable_type', 'tokenable_id']); // Drops indexes
});
这样做之后,您可以删除该表并再次创建它。
https://stackoverflow.com/questions/74498790
复制相似问题