当前位置: 首页 > 知识库问答 >
问题:

我不能删除唯一索引

琴献
2023-03-14
 $table->unique(['owner_id', 'promoter_id']);
$table->dropUnique(['owner_id', 'promoter_id']);
$table->dropForeign('connections_promoter_id_foreign');

共有1个答案

赫连鸿振
2023-03-14

索引上的Laravel docs中,您可以创建具有指定名称的唯一索引:

因此,为了避免调试laravel如何为索引构造名称,您可以在添加索引时为其分配一个名称,例如:

$table->unique(['owner_id', 'promoter_id'], 'owner_promoter_index');

然后当你扔掉它时,你使用相同的名称:

$table->dropUnique('owner_promoter_index');
 类似资料:
  • 问题内容: 我相信在A,B,C,D的两个表字段之间插入了唯一索引,以防止重复。但是我以某种方式简单地对它们做了一个普通索引。因此插入了重复项。它是2000万个记录表。 如果我将现有索引从普通索引更改为唯一索引,或者只是为A,B,C,D添加新的唯一索引,由于存在唯一记录,重复项将被删除还是添加失败?我将对其进行测试,但它已达到3000万条记录,并且我既不希望将表弄乱或复制它。 问题答案: 如果表中有

  • 我知道如果数据是唯一的,理论上唯一索引会比非唯一索引快。 因为唯一索引能够提供更多信息,并让查询优化器选择更有效的执行计划。 我正在做一些测试,想证明唯一索引可能比执行计划中的非唯一索引更好,但结果显示它们是相同的。。。 我创建了一个表和两个索引(< code>IX_ID_T3不唯一,< code>UIX_ID_T3唯一),然后插入了1000000个样本行。 插入数据后,我运行< code >真空

  • 如何在不删除索引映射的情况下从elasticsearch数据库中删除数据? 我是Tire gem,使用删除命令删除我所有的映射并再次运行创建命令。我想避免创建命令一次又一次地运行。 请帮我解决这个问题。

  • 已加载查询: 加载的索引: net.ucanaccess.jdbc.ucanaccessSqlException:UCAEXC::3.0.0在net.ucanaccess.jdbc.ucanaccessDriver.connect(UCANAccessDriver.java.driverManager.getConnection(DriverManager.java:258)在java.sql.d

  • 以下两者之间有区别吗: 以及: 在这两种情况下,名称是否唯一?索引唯一时意味着什么? 编辑:Postgres是唯一的约束,而索引没有回答我的问题。它考虑了FK的情况。我的问题与FK无关。我只想知道在这个例子中,这两个操作是否等价,其中不涉及FK。