在PHP和MySQL中,要執行事務的回滾操作,您需要遵循以下步驟:
mysqli_begin_transaction()
函數開始一個新的事務。$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_error) {
die("連接失敗: " . $mysqli->connect_error);
}
$mysqli->begin_transaction();
mysqli_query()
函數執行查詢。$sql1 = "INSERT INTO table1 (column1, column2) VALUES ('value1', 'value2')";
$sql2 = "UPDATE table2 SET column1 = 'value3' WHERE column2 = 'value4'";
if (!$mysqli->query($sql1)) {
echo "Error: " . $sql1 . "<br>" . $mysqli->error;
}
if (!$mysqli->query($sql2)) {
echo "Error: " . $sql2 . "<br>" . $mysqli->error;
}
mysqli_commit()
函數提交事務。if ($mysqli->affected_rows > 0) {
if (!$mysqli->commit()) {
echo "事務提交失敗: " . $mysqli->error;
} else {
echo "事務提交成功";
}
} else {
echo "沒有影響的行,事務已回滾";
}
mysqli_rollback()
函數撤銷所有更改。$mysqli->rollback();
echo "事務回滾成功";
將以上代碼片段組合在一起,您將得到一個完整的事務處理流程,包括開始、提交和回滾操作。請確保在實際應用中根據您的需求調整代碼。