【问题标题】:DB2 unique constraint, unique indexes and performanceDB2 唯一约束、唯一索引和性能
【发布时间】:2023-03-11 18:57:01
【问题描述】:

我有一个需要两行唯一的表。它们可能会定期加入,因此我可能需要对这些行进行索引。

我查看了Unique constraint 和Unique Index 上的信息中心。

我想知道差异和性能影响。两者似乎都创建了一个索引。唯一索引允许一个空值。还有其他重要的区别吗?

这些索引是提高查询性能还是只是强制执行唯一性?出于性能原因,我应该添加一个额外的索引还是唯一索引足够好?不幸的是,我还没有足够的测试数据来试用它。

【问题讨论】:

  • 唯一约束链接的第一行:“唯一约束确保 一组列中的值是......” - 那么你从哪里得到“允许一个仅列”来自?
  • @Damien_The_Unbeliever 嗯。深入了解ALTER TABLE Statement,您可能是对的。

标签: sql indexing db2 unique unique-constraint


【解决方案1】:

唯一约束或唯一索引没有性能差异,任何一个都足够了。在查询处理期间,DB2 优化器会自动选取为维护唯一约束而创建的索引。

【讨论】:

    【解决方案2】:

    你会在这个话题中找到解释:http://bytes.com/topic/db2/answers/185707-difference-between-unique-constraint-unique-index

    一句话解释:

    唯一索引是物理事物,而唯一约束是数据 建模构造。如前所述,唯一约束是 通过添加唯一索引来实现(并且另外需要 NOT NULL 条件)。

    【讨论】:

    • 其实我已经通过google找到了这个链接。但它没有回答性能方面的问题,我不确定 05 的信息是否仍然是最新的。外键的唯一约束现在似乎仍然适用。
    猜你喜欢
    • 2011-11-23
    • 2021-11-02
    • 2015-12-29
    • 2011-03-18
    • 2014-10-01
    • 2018-12-02
    • 1970-01-01
    • 2014-11-28
    • 1970-01-01
    相关资源
    最近更新 更多