在Delphi中使用MySQL事務,需要通過ADO連接MySQL數據庫,并使用ADOCommand來執行SQL語句。以下是一個簡單的示例代碼:
uses
ADODB;
procedure TestTransaction;
var
Connection: TADOConnection;
Command: TADOCommand;
begin
Connection := TADOConnection.Create(nil);
Command := TADOCommand.Create(nil);
Connection.ConnectionString := 'Provider=MSDASQL.1;Password=your_password;Persist Security Info=True;User ID=your_username;Data Source=your_mysql_dsn;';
Connection.LoginPrompt := False;
Connection.Connected := True;
Command.Connection := Connection;
try
Connection.BeginTrans; // 開始事務
Command.CommandText := 'INSERT INTO your_table (column1, column2) VALUES (value1, value2)';
Command.Execute;
Command.CommandText := 'UPDATE your_table SET column1 = new_value WHERE column2 = some_condition';
Command.Execute;
Connection.CommitTrans; // 提交事務
except
on E: Exception do
begin
Connection.RollbackTrans; // 回滾事務
ShowMessage('Error: ' + E.Message);
end;
end;
Connection.Free;
Command.Free;
end;
在上面的示例中,首先創建一個ADOConnection對象和一個ADOCommand對象,然后使用ADOConnection設置連接字符串,連接到MySQL數據庫。在try塊中,通過調用BeginTrans方法開始一個新的事務,然后執行SQL語句進行數據操作。如果出現異常,會在except塊中回滾事務并顯示錯誤信息。最后,調用CommitTrans方法提交事務并釋放連接對象。
需要注意的是,在連接字符串中需要根據實際情況填寫MySQL數據庫的信息,包括用戶名、密碼、數據源等。另外,執行的SQL語句也需要根據實際情況編寫。