Bạn có thể sử dụng các giao dịch, nếu công cụ bạn sử dụng hỗ trợ nó (InnoDB, BDB).
Xem http://dev.mysql.com/doc/refman/ 5.0 / en / commit.html để làm ví dụ.
Chỉnh sửa:ví dụ nhanh bằng cách sử dụng mysqli :
$connection->autocommit(FALSE); // disable auto-commit and start a new transaction
$result = $connection->query("INSERT INTO `table` VALUES (1,2,3)");
$result &= $connection->query("UPDATE `otherTable` SET `val1`=1 WHERE `id`=$idOfInsert");
if (!$result) {
// One of the queries has failed: cancel the transaction
$connection->rollback();
} else {
// Both queries worked:commit the current transaction
$connection->commit();
}
$connection->autocommit(TRUE); // enable auto-commit
Bạn có thể muốn tối ưu hóa các truy vấn (tức là không thực thi truy vấn thứ hai nếu truy vấn đầu tiên không thành công, hãy sử dụng các câu lệnh đã chuẩn bị sẵn, ...)