
mysqli::commit()을 사용하여 트랜잭션을 커밋하면, 데이터베이스에 영구적으로 저장됩니다. 커밋은 트랜잭션 내의 모든 변경 사항을 데이터베이스에 반영하는 것을 의미합니다.
반면, mysqli::rollback()을 사용하여 트랜잭션을 롤백하면, 이전 상태로 돌아갑니다. 롤백은 트랜잭션 내의 모든 변경 사항을 취소하고, 데이터베이스의 이전 상태로 되돌리는 것을 의미합니다.
트랜잭션 관리는 데이터베이스의 일관성을 유지하고, 데이터의 무결성을 보장하는 데 중요합니다. 트랜잭션은 다음과 같은 특징을 가집니다.
- 원자성(Atomicity): 트랜잭션 내의 모든 변경 사항이 성공적으로 반영되거나, 모두 취소된다.
- 일관성(Consistency): 트랜잭션의 결과는 데이터베이스의 일관성을 유지해야 한다.
- 격리성(Isolation): 트랜잭션의 결과는 다른 트랜잭션에 영향을 주지 않는다.
- 지속성(Durability): 트랜잭션의 결과는 영구적으로 저장된다.
MySQLi와 같은 프로그래밍 언어의 라이브러리는 이러한 트랜잭션 특징을 지원하여, 데이터베이스의 일관성과 무결성을 유지할 수 있도록 도와줍니다.
2025-03-15 02:57