База данных и компоненты, запрос & стол от Accuracer.exactacer: transaction not working
Я использую простой запрос на удаление:
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;
Если я оставить запрос, как это выше, это работает. Как только я раскомментирую строки, это не так. Он просто удаляет записи из моей сетки, но данные в базе данных не повреждены.
Я что-то испортил?
Это таблица в памяти? Спросить, потому что ['они говорят'] (http://www.accuracer.com/products/acr/guide_bde_alternative_client-server_single-file_embedded_bde_replacement_database_delphi_c++builder_kylix/transactions.php), что * Accuracer поддерживает транзакции только для дисковых баз данных *. – TLama
нет, это база данных диска. – user763539
Свойство inMemory запроса также установлено в false ... – user763539