[php] PDO와 트랜잭션 커밋
-
PDO란 무엇인가요? PDO는 PHP에서 데이터베이스 처리를 위한 확장 모듈입니다. 이를 사용하면 여러 가지 데이터베이스에 대한 일관된 방식으로 작업할 수 있습니다.
-
PDO를 사용한 데이터베이스 연결 먼저, PDO를 사용하여 데이터베이스에 연결합니다. 연결을 설정하려면
dsn
,username
,password
를 사용합니다.
<?php
$dsn = 'mysql:host=localhost;dbname=database';
$username = 'username';
$password = 'password';
try {
$dbh = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
- 트랜잭션 시작
트랜잭션을 시작하려면
beginTransaction
메서드를 사용합니다.
$dbh->beginTransaction();
-
작업 수행 이제 데이터베이스 작업을 수행합니다. INSERT, UPDATE, DELETE 등의 쿼리를 실행할 수 있습니다.
-
트랜잭션 커밋 모든 작업이 성공적으로 수행되면
commit
메서드를 사용하여 트랜잭션을 커밋합니다.
$dbh->commit();
- 예외 처리와 롤백
만약 작업 중에 오류가 발생하면
catch
블록에서 예외 처리를 수행하고rollback
메서드를 사용하여 트랜잭션을 롤백할 수 있습니다.
try {
// 데이터베이스 작업 수행
// ...
$dbh->commit();
} catch (Exception $e) {
$dbh->rollback();
echo "Transaction failed: " . $e->getMessage();
}
이상으로 PDO를 사용하여 데이터베이스 트랜잭션을 커밋하는 방법에 대해 알아보았습니다. 이를 통해 데이터베이스 작업 시 데이터 무결성을 보장하고 예외 상황에 대비할 수 있습니다.