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?

Foi útil?

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.

5.6. Objetos de banco de dados auxiliares

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top