Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vinícius Pimentel

Problema com DELETE+DATA

Recommended Posts

Segue abaixo minha dúvida: Possuo uma tabela cliente onde tenho como campo Data_Acesso(Date Time). Esta tabela registrará dados durante 3 meses. Ao término destes 90 dias, no 91 dia(nonagésimo primeiro) terá q ter uma instrução q apague o 1º dia referente aos 3 meses antigos para que tenha sempre 3 meses na base de dados armazenados... Mais ou menos assim...A cada dia seguinte ele apaga um dia lá de trás...me ajude plz... Grato!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pimentel,um JOB vai resolver essa parada pra tu, veja ai:http://www.imasters.com.br/artigo/257/sql_..._no_sql_server/http://www.juliobattisti.com.br/artigos/wi...obsqlserver.aspbons estudos camaradat+

Mt grato pela ajuda, porém o JOB eu já tinha certeza de que precisaria dele pra tal conclusão...meu problema é quanto a questão da instrução SQL...Grato pela compreeensão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mt grato pela ajuda, porém o JOB eu já tinha certeza de que precisaria dele pra tal conclusão...meu problema é quanto a questão da instrução SQL...

 

Grato pela compreeensão.

sem problemas camarada,

 

pra fazer a query, a função dateadd vai matar o seu problema, segue um simples exemplo:

SELECT dateadd(dd,-30,getdate())
SELECT * FROM Tabela
WHERE CampoData < dateadd(dd,-90,getdate())

é só adaptar ai...

 

t++

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom com a sua ajuda consegui resolver tal poblema...basta criar um Job com um Schedule. Mas ainda sobre este assunto, existiria a possiblidade de usar o DELETE diáriamente. Onde eu menciono ali em cima sobre o 91(nonagésimo primeiro dia). Quando chegar neste dia ele naum apaga os 3 meses antigos e sim vai apagando de forma diária. A cada dia atual corrente o dia antigo é deletado...conseguiu me entender???Grato pela rápida ajuda e seriedade!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom com a sua ajuda consegui resolver tal poblema...basta criar um Job com um Schedule. Mas ainda sobre este assunto, existiria a possiblidade de usar o DELETE diáriamente. Onde eu menciono ali em cima sobre o 91(nonagésimo primeiro dia). Quando chegar neste dia ele naum apaga os 3 meses antigos e sim vai apagando de forma diária. A cada dia atual corrente o dia antigo é deletado...conseguiu me entender???Grato pela rápida ajuda e seriedade!!!

é só adaptar o select que fiz acima, no caso esta selecionando os registros que sejam inferiores a 90 dias, qq. coisa mude o menor (<) pelo igual (=), a vantagem de deixar o menor é que se caso algum dia o job não rodar, por exemplo o servidor esteja desligado na hora do job, com isso no outro dia que rodar vai apagar todos os dias anterioresqq. coisa veja se o help oficial te ajuda: http://msdn2.microsoft.com/en-us/library/a...67(sql.80).aspxverifique tb. nosso tópico especial sobre datas: http://forum.imasters.com.br/index.php?showtopic=224454bons estudos...força e honra

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom com a sua ajuda consegui resolver tal poblema...basta criar um Job com um Schedule. Mas ainda sobre este assunto, existiria a possiblidade de usar o DELETE diáriamente. Onde eu menciono ali em cima sobre o 91(nonagésimo primeiro dia). Quando chegar neste dia ele naum apaga os 3 meses antigos e sim vai apagando de forma diária. A cada dia atual corrente o dia antigo é deletado...conseguiu me entender???Grato pela rápida ajuda e seriedade!!!

é só adaptar o select que fiz acima, no caso esta selecionando os registros que sejam inferiores a 90 dias, qq. coisa mude o menor (<) pelo igual (=), a vantagem de deixar o menor é que se caso algum dia o job não rodar, por exemplo o servidor esteja desligado na hora do job, com isso no outro dia que rodar vai apagar todos os dias anterioresqq. coisa veja se o help oficial te ajuda: http://msdn2.microsoft.com/en-us/library/a...67(sql.80).aspxverifique tb. nosso tópico especial sobre datas: http://forum.imasters.com.br/index.php?showtopic=224454bons estudos...força e honra
Kra rolou trankilamente...mt boa a sua ajuda. Agora caso o Job venha a falhar terei dados duplicados. E aí o q será do sistema??? Pode dar problema???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom com a sua ajuda consegui resolver tal poblema...basta criar um Job com um Schedule. Mas ainda sobre este assunto, existiria a possiblidade de usar o DELETE diáriamente. Onde eu menciono ali em cima sobre o 91(nonagésimo primeiro dia). Quando chegar neste dia ele naum apaga os 3 meses antigos e sim vai apagando de forma diária. A cada dia atual corrente o dia antigo é deletado...conseguiu me entender???Grato pela rápida ajuda e seriedade!!!

é só adaptar o select que fiz acima, no caso esta selecionando os registros que sejam inferiores a 90 dias, qq. coisa mude o menor (<) pelo igual (=), a vantagem de deixar o menor é que se caso algum dia o job não rodar, por exemplo o servidor esteja desligado na hora do job, com isso no outro dia que rodar vai apagar todos os dias anterioresqq. coisa veja se o help oficial te ajuda: http://msdn2.microsoft.com/en-us/library/a...67(sql.80).aspxverifique tb. nosso tópico especial sobre datas: http://forum.imasters.com.br/index.php?showtopic=224454bons estudos...força e honra
Kra rolou trankilamente...mt boa a sua ajuda. Agora caso o Job venha a falhar terei dados duplicados. E aí o q será do sistema??? Pode dar problema???
Alguém poderia me responder ou esqueceram de mim?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguém poderia me responder ou esqueceram de mim?

creio que a resposta esta ali em cima, se deixar menor ou igual (<= ) qdo. rodar no outro dia vai limpar tudo pra trast+++

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.