sql server 2005: como colocar restrição de não nulo em uma coluna dependendo valor em outra coluna?

StackOverflow https://stackoverflow.com/questions/823481

  •  05-07-2019
  •  | 
  •  

Pergunta

em uma tabela de duas das colunas são cobráveis ??(bit), billabledate (datetime) .i deseja data faturáveis ??para não ser nulo se faturáveis ??não é nulo.

Foi útil?

Solução

Adicionar uma restrição de verificação:

CHECK (faturáveis ??não é nulo e billabledate não é null) OR (faturável é null)

Outras dicas

Você precisa de uma restrição CHECK

ALTER TABLE dbo.Table COM NOCHECK
ADD CONSTRAINT CK_Table_BusinessRule CHECK (faturáveis ??não é nula e BillableDate IS NOT NULL)

http://msdn.microsoft.com/ en-us / library / ms179491 (SQL.90) .aspx

Eu tentaria adicionando um gatilho para a mesa, depois de inserção e após a atualização, para impor essa restrição. Verifique o valor a cobrar, e bloco de insert / update no caso, não é nulo eo billabledate é nulo.

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