Deletar automaticamente registros
Colegas, estou precisando deixar na tabela
apenas os registros inseridos, do dia anterior
e do dia atual. Como faço para deletar os
antigos automaticamente?
Agradecido
Juarez
apenas os registros inseridos, do dia anterior
e do dia atual. Como faço para deletar os
antigos automaticamente?
Agradecido
Juarez
Juarezber
Curtidas 0
Respostas
Vitor Alcantara
31/01/2007
Cria uma consulta que exclua o registros.
Tipo :
DELETE From Tabela
WHERE Data < :Data
E no evento onCreate do form.
Coloque :
Query.Parameters[0].Value := IncDay(Date,-2);
Query.ExecSql;//Exclui os registros
Tabela.Open;//Abre a tabela
Para essa função IncDay funcionar você tem que declarar a unit DateUtils na sessão Uses do teu form.
Eu acho que isso talvez resolva seu problema.
Tipo :
DELETE From Tabela
WHERE Data < :Data
E no evento onCreate do form.
Coloque :
Query.Parameters[0].Value := IncDay(Date,-2);
Query.ExecSql;//Exclui os registros
Tabela.Open;//Abre a tabela
Para essa função IncDay funcionar você tem que declarar a unit DateUtils na sessão Uses do teu form.
Eu acho que isso talvez resolva seu problema.
GOSTEI 0
Juarezber
31/01/2007
Obrigado, deu certo.
var SQL: String;
Data: TDate;
Data_string: String;
begin
Query1.Close;
Query1.Sql.Clear;
Data:= IncDay(Date(), -1);
Data_string:= FormatDateTime(´mm/dd/yyyy´, Data);
SQL:= ´DELETE FROM Paradas WHERE data < ´´´ + Data_string + ´´´´;
Query1.SQL.Add(SQL);
Query1.ExecSQL;
Table1.Open;
end;
var SQL: String;
Data: TDate;
Data_string: String;
begin
Query1.Close;
Query1.Sql.Clear;
Data:= IncDay(Date(), -1);
Data_string:= FormatDateTime(´mm/dd/yyyy´, Data);
SQL:= ´DELETE FROM Paradas WHERE data < ´´´ + Data_string + ´´´´;
Query1.SQL.Add(SQL);
Query1.ExecSQL;
Table1.Open;
end;
GOSTEI 0