Delphi Personal で DAO
トランザクションを取り消す
procedure TForm1.Button19Click(Sender: TObject);
var
de:Variant;//DBEngine
db:Variant;//Database
rs:Variant;//Recordset
const
dbOpenTable:Integer = 1;
begin
de := CreateOleObject('DAO.DBEngine.36');
//トランザクションを開始
de.BeginTrans;//Edit3 に mdbファイル名を入力
db := de.OpenDatabase(Edit3.Text,false, false);//Edit4 に テーブル名を入力
rs := db.OpenRecordset(Edit4.Text, dbOpenTable);//Edit7 に インデックス名を入力
rs.Index := Edit7.Text;//Edit1 に Key値を入力
rs.Seek('=', Edit1.Text);
if not rs.NoMatch then
begin
rs.Edit;
rs.Fields[1].Value := Edit2.Text;
rs.Update;
end;rs.Close;
db.Close;//トランザクションの取消
de.RollBack;
end;