【发布时间】:2014-02-14 00:06:11
【问题描述】:
我没有找到关于该主题的明确答案,也没有从文档中找到它。
我想按状态(A 和 B)对表进行分区,我可以添加一个仅适用于分区 A 的唯一约束吗?
意思是,当一条记录处于状态 A 时,它必须是唯一的,但如果我将它更新为状态 B,那么它将不再适用于它?
【问题讨论】:
-
12c中有Partial Indexes。似乎可以在部分本地唯一索引的帮助下强制执行唯一性,但必须进行验证。当然,用索引而不是约束来强制唯一性不是一个好习惯,但至少总比没有好。
-
另见 AskTom Local unique indexes on partitioned tables,他解释了为什么在没有分区前缀的情况下不允许本地索引唯一性。更多关于同一主题:richardfoote.wordpress.com/2007/12/20/…