データベースとコンポーネント、クエリ、テーブルは Accuracer のものです。
私は単純な削除クエリを使用しています:
procedure TMain_Form.Button1Click(Sender: TObject);
begin
DATA_MODULE.QUERY.Close;
DATA_MODULE.QUERY.SQL.Clear;
//DATA_MODULE.QUERY.SQL.Add('START TRANSACTION;');
DATA_MODULE.QUERY.SQL.Add('delete from TABLE where DONE = TRUE');
try
//DATA_MODULE.QUERY.SQL.Add('COMMIT;');
DATA_MODULE.QUERY.ExecSQL;
DATA_MODULE.TABLE.Refresh;
except
//DATA_MODULE.QUERY.SQL.Text := 'ROLLBACK';
//DATA_MODULE.QUERY.ExecSQL;
DATA_MODULE.TABLE.Cancel;
end;
end;
上記のクエリをそのままにしておくと、機能します。行のコメントを外すとすぐに、そうではありません。グリッドからレコードを削除するだけですが、データベース内のデータはそのままです。
ここで何かを台無しにしていますか?