我需要以下述方式创建的约束:

CONSTRAINT [IX_Unique_1] UNIQUE NONCLUSTERED 
(
    [Ordering] ASC,
    [Description] ASC
),
CONSTRAINT [IX_Unique_2] UNIQUE NONCLUSTERED 
(
    [Description] ASC
)

我有以下的nHibernate映射:

<property name="Description" column="Description" type="String" unique-key="IX_Seed_Template_Fields_Result" />

<property name="Ordering" column="Ordering" type="Int32" unique-key="IX_Seed_Template_Fields_Result" />

所以,我怎么能只是为了说明栏添加一个单独的唯一约束?

有帮助吗?

解决方案

如果你不关心数据库索引的名字,你可以映射这样的:

<property 
  name="Description" 
  column="Description" 
  type="String" 
  unique-key="Description, Ordering_Description" />

<property 
  name="Ordering" 
  column="Ordering" 
  type="Int32" 
  unique-key="Ordering_Description" />

可以提供索引名称的逗号分隔的列表。具有列表中的名称相同的所有列添加到相同的索引。

其他提示

使用<database-object>来创建附加的索引。

5.6。辅助数据库对象

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top