Olá, fiz um MDB em Access, mudei pra ANSI-92 e comecei a criá-lo. Nas validações encontrei um problema, no meu banco estou colocando uma tabela com metas. Cada indicador tem a sua e ela vale por um período. Como faço um CHECK que verifique se a data inserida no início e no final do período não esteja contido por outro período?
teria que ser algo +- assim:
ALTER TABLE meta
ADD CONSTRAINT chk_periodoSobreposto CHECK
(
'OPA!' NOT IN
(
SELECT
'OPA!' AS result
FROM
meta
WHERE
meta.codigoIndicador = codigoIndicador /*Aqui da problema porque ele compara com ele mesmo*/
AND inicio BETWEEN meta.inicio AND meta.fim /*Aqui da problema porque ele compara com ele mesmo*/
AND fim BETWEEN meta.inicio AND meta.fim /*Aqui da problema porque ele compara com ele mesmo*/
)
)
Se eu colocar um valor fixo alí onde ta dando problema ele funciona. Alguma ideia de como resolver isso sem validar na aplicação?
Pergunta
Iceguy
Olá, fiz um MDB em Access, mudei pra ANSI-92 e comecei a criá-lo. Nas validações encontrei um problema, no meu banco estou colocando uma tabela com metas. Cada indicador tem a sua e ela vale por um período. Como faço um CHECK que verifique se a data inserida no início e no final do período não esteja contido por outro período?
teria que ser algo +- assim:
Se eu colocar um valor fixo alí onde ta dando problema ele funciona. Alguma ideia de como resolver isso sem validar na aplicação?
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.