APAGAR REGISTROS ANTIGOS
Oi pessoal olha eu aqui de novo!!! rsrsrsrsrs
Bom pessoal este usando este codigo para atulizar meu banco de dados:
Private Sub Command2_Click()
Dim caminho As String
Dim con As ADODB.Connection
caminho = App.Path & "\BD.mdb" 'Este é o local do banco .MDB
Set con = New ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & caminho & ";Persist Security Info=False"
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & (Now - 31) & "#"
Set con = Nothing
MsgBox "Registros Antigos Apagados", vbInformation, "Atualização do Banco de Dados"
End Sub
So que este codigo deveria apagar registros com datas antigas de trinta dias atras, mais eles esta apagando registros até a data atual, será que este calculo q faço esta errado (Now - 31).
Brigadão galera valeu!!!
Bom pessoal este usando este codigo para atulizar meu banco de dados:
Private Sub Command2_Click()
Dim caminho As String
Dim con As ADODB.Connection
caminho = App.Path & "\BD.mdb" 'Este é o local do banco .MDB
Set con = New ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & caminho & ";Persist Security Info=False"
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & (Now - 31) & "#"
Set con = Nothing
MsgBox "Registros Antigos Apagados", vbInformation, "Atualização do Banco de Dados"
End Sub
So que este codigo deveria apagar registros com datas antigas de trinta dias atras, mais eles esta apagando registros até a data atual, será que este calculo q faço esta errado (Now - 31).
Brigadão galera valeu!!!
BOM ESSA STRING ESTA CORRETA
+ POR VIAS DAS DUVIDAS TENTA ESSE
VOU TE PASSAR OUTRA A DIFERENÇA é
NOW = RETORNA DATA E HORA ISSO PODE DAR ERRO NO RETORNO DE DADOS FILTRO NO ACCESS
DATE()=RETORNA SOMENTE A DATA E TORNA + PRECISO O FILTRO NA TABELA ,é CLARO C O CAMPO é DO TIPO DATA/HORA
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & DATEADD("d",-31, DATE() ) & "#"
ESPERO TER AJUDADO
+ POR VIAS DAS DUVIDAS TENTA ESSE
VOU TE PASSAR OUTRA A DIFERENÇA é
NOW = RETORNA DATA E HORA ISSO PODE DAR ERRO NO RETORNO DE DADOS FILTRO NO ACCESS
DATE()=RETORNA SOMENTE A DATA E TORNA + PRECISO O FILTRO NA TABELA ,é CLARO C O CAMPO é DO TIPO DATA/HORA
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & DATEADD("d",-31, DATE() ) & "#"
ESPERO TER AJUDADO
Caro Fabio, tentei o codigo q vc me passou ele continua fazendo a atulização errada continua apagando os mesmos registros.
Será q não tem como ao inves de deixar o sistema reconhecer esta data, eu digitar uma data pra q ele verifique, tipo ter um lugar onde eu digitaria a data do mês anterior.
Eu tentei o seguite codigo:
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & text1.text & "#"
Mas não deu certo. Sabes o pq...
Valeu...
"Aprender é saber ensinar"
Será q não tem como ao inves de deixar o sistema reconhecer esta data, eu digitar uma data pra q ele verifique, tipo ter um lugar onde eu digitaria a data do mês anterior.
Eu tentei o seguite codigo:
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & text1.text & "#"
Mas não deu certo. Sabes o pq...
Valeu...
"Aprender é saber ensinar"
BOM TENTA ASSIM
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & DATEADD("d",-31," & text1.text & ")#"
ESPERO TER AJUDADO
con.Execute "UPDATE Banco_Dados SET Idade=NULL, Data=NULL WHERE Data < #" & DATEADD("d",-31," & text1.text & ")#"
ESPERO TER AJUDADO
Desculpa Fabio mais continua o mesmo erro, não exsite como fazer isto de uma outra forma???
Velu pela força galera
Velu pela força galera
Tópico encerrado , respostas não são mais permitidas