voldb是否支持唯一索引?



我们的模式有一个USER表…

USER( 
   userId,
   firstname,
   lastname,
   email)

,我们要确保所有用户都有唯一的电子邮件地址。是否有可能在voldb中创建一个唯一的索引来强制执行此约束?

voldb支持主键索引(总是唯一的)以及可以定义为唯一的二级索引。

对于特定的表,您有两种选择来强制email列的唯一性:

  1. 定义USER表为复制表。
  2. 在email列上为USER表分区
如果在email上创建唯一索引,并在userId上对表进行分区,那么email列的惟一性强制将在单个分区内执行。

voldb为主键提供隐式索引。例如,如果你分配userID为主键,那么userID将是唯一的(因为voldb的隐式索引在主键上分配),但要使电子邮件列唯一,你必须显式地在电子邮件列上分配约束unique。类似地,假设您正在对一个表进行分区,并且在列userID上进行分区,那么为了强制email在每个分区中是唯一的,您应该显式地在email列上分配'ASSUMEUNIQUE'约束。

最新更新