múltiplas chaves únicas no Nibernate
-
27-09-2019 - |
Pergunta
Preciso de restrições criadas da seguinte maneira:
CONSTRAINT [IX_Unique_1] UNIQUE NONCLUSTERED
(
[Ordering] ASC,
[Description] ASC
),
CONSTRAINT [IX_Unique_2] UNIQUE NONCLUSTERED
(
[Description] ASC
)
Eu tenho o seguinte mapeamento de Nibernate:
<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" />
Então, como posso adicionar uma restrição exclusiva separada apenas para a coluna de descrição?
Solução
Se você não se importa com os nomes de índices no banco de dados, pode mapear assim:
<property
name="Description"
column="Description"
type="String"
unique-key="Description, Ordering_Description" />
<property
name="Ordering"
column="Ordering"
type="Int32"
unique-key="Ordering_Description" />
Você pode fornecer uma lista separada por vírgula de nomes de índices. Todas as colunas que têm o mesmo nome na lista são adicionadas ao mesmo índice.
Outras dicas
Usar <database-object>
Para criar índices adicionais.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow