deletar registro com mais de trinta dias
eu tenho uma tabela que eu quero registros temporários lá do tipo orçamentos com mais de trinta dias deve serm excluidos automáticamente
Crcam
Curtidas 0
Respostas
Sremulador
29/12/2007
bem, utilize o comando delete
(delete from tabela where data <= now)
GOSTEI 0
Devmedia
29/12/2007
Amigo CRCAM.
Tudo bom? Faça o seguinte:
Expirar é o seu campo tipo DATE no BD, aonde você irá gravar a data de expiração daquele registro.
A função NOW() no SQL, retorna o dia de hoje, ou seja, todos que tem a data para expirar anterior a hoje, serão deletadas.
Espero ajudar.
Um abraço, um Feliz ano novo.
Att
Tudo bom? Faça o seguinte:
DELETE FROM tabela WHERE expirar <= NOW()
Expirar é o seu campo tipo DATE no BD, aonde você irá gravar a data de expiração daquele registro.
A função NOW() no SQL, retorna o dia de hoje, ou seja, todos que tem a data para expirar anterior a hoje, serão deletadas.
Espero ajudar.
Um abraço, um Feliz ano novo.
Att
GOSTEI 0
Carlosrm
29/12/2007
CRCAM,
dando palpite na sugestão dos demais colegas, tbm pode ser assim
Dependendo do tipo de banco de dados que vc estiver usando, provavelmente a instrução será um pouco diferente, mas a idéia central é a mesma: apagar o registro cuja data seja menor que a data atual menos 30 (dias). Dia 20 de novembro de 2007 é menor que 02 de janeiro de 2008 - 30 dias.
20/11/2007 < (02/01/2008 - 30) // true
Espero ter ajudado.
carlosrm :)
dando palpite na sugestão dos demais colegas, tbm pode ser assim
(delete from tabela where campo_data_da_sua_tabela < (now - 30));
Dependendo do tipo de banco de dados que vc estiver usando, provavelmente a instrução será um pouco diferente, mas a idéia central é a mesma: apagar o registro cuja data seja menor que a data atual menos 30 (dias). Dia 20 de novembro de 2007 é menor que 02 de janeiro de 2008 - 30 dias.
20/11/2007 < (02/01/2008 - 30) // true
Espero ter ajudado.
carlosrm :)
GOSTEI 0