Транзакция PDO относится к использованию транзакций в расширении PHP PDO (объекты данных PHP) для операций с базой данных. Транзакции позволяют группировать несколько запросов к базе данных в одну логическую единицу, гарантируя, что либо все запросы будут успешными, либо ни один из них не будет применен. Это помогает поддерживать целостность и согласованность данных. Вот несколько методов, связанных с транзакциями PDO, а также примеры кода:
- Начать транзакцию:
Чтобы начать транзакцию, вы можете использовать методbeginTransaction():
try {
$pdo->beginTransaction();
// Perform database operations
$pdo->commit(); // Commit the transaction
} catch (PDOException $e) {
$pdo->rollBack(); // Rollback the transaction on failure
echo "Transaction failed: " . $e->getMessage();
}
<ол старт="2">
Чтобы зафиксировать (применить) изменения, внесенные в транзакции, вы можете использовать метод
commit():$pdo->beginTransaction();
try {
// Perform database operations
$pdo->commit(); // Commit the transaction
} catch (PDOException $e) {
$pdo->rollBack(); // Rollback the transaction on failure
echo "Transaction failed: " . $e->getMessage();
}
- Откат транзакции.
Если во время транзакции произошла ошибка или вы хотите отменить внесенные в нее изменения, вы можете использовать методrollBack():
$pdo->beginTransaction();
try {
// Perform database operations
$pdo->rollBack(); // Rollback the transaction
} catch (PDOException $e) {
echo "Rollback failed: " . $e->getMessage();
}
- Проверка статуса транзакции.
Вы можете использовать методinTransaction(), чтобы проверить, активна ли транзакция в данный момент:
if ($pdo->inTransaction()) {
echo "A transaction is in progress.";
} else {
echo "No transaction is in progress.";
}
Это некоторые из основных методов, используемых для работы с транзакциями PDO в PHP.