Dúvida como fazer uma trigger
Boa tarde,
Possuo uma tabela com o nome de teste. Essa tabela possui a seguinte estrutura:
cd_teste identity, ds_descricao varchar(50), dt_inicio smalldatetime, dt_fim smalldatetime.
Na minha aplicacao, posso somente informar a descricao e a data inicial.
Devo fazer uma trigger de insert, que verificará se no registro que está sendo incluido, a data inicial é menor do que alguma data já existente na tabela. Se for, a data final do registro que está sendo incluindo deverá ser igual a data inicial do registro com o dt_inicio mais proximo ao que estou incluindo menos um dia. se não for, colocar no registro anterior ao que estou incluindo da data de início desse, menos um dia.
Alguem sabe como fazer esse troço?
Att,
Roberto
Possuo uma tabela com o nome de teste. Essa tabela possui a seguinte estrutura:
cd_teste identity, ds_descricao varchar(50), dt_inicio smalldatetime, dt_fim smalldatetime.
Na minha aplicacao, posso somente informar a descricao e a data inicial.
Devo fazer uma trigger de insert, que verificará se no registro que está sendo incluido, a data inicial é menor do que alguma data já existente na tabela. Se for, a data final do registro que está sendo incluindo deverá ser igual a data inicial do registro com o dt_inicio mais proximo ao que estou incluindo menos um dia. se não for, colocar no registro anterior ao que estou incluindo da data de início desse, menos um dia.
Alguem sabe como fazer esse troço?
Att,
Roberto
Robertolucio
Curtidas 0
Respostas
Robertolucio
07/11/2005
Da forma abaixo funcionou, mas não sei se é a melhor:
update teste
set testedt_fim= (select dateadd(dd, -1, min(a.dt_inicio))
from teste a
where a.dt_inicio> teste.dt_inicio)
update teste
set testedt_fim= (select dateadd(dd, -1, min(a.dt_inicio))
from teste a
where a.dt_inicio> teste.dt_inicio)
GOSTEI 0