次のうち、DBMS (Database Management System) のトランザクションに関する説明として最も適切なものはどれか。
@ トランザクションの実行中にソフトウェア障害が発生すると、データベースの一貫性が失われてしまい回復できない。
A トランザクションの開始は製品によって異なり、必ずしも BEGIN により始められるわけではない。
B トランザクションの COMMIT により、全てのデータ操作が取り消される。
C トランザクションを ROLLBACK すると、その時点までのデータ操作が部分的にデータベースに反映され、一貫性が保たれる。
D トランザクションを複数同時に実行する場合、データベースの一貫性を保つようにする手段はない。
A
トランザクション処理においてはACID特性が求められる。
Atomicity (原子性):トランザクション処理が「全て実行される」か「一つも実行されないか」のどちらかになることを保証する。
Consistency (一貫性):トランザクションの前後で、データに矛盾が無く整合性が保たれることを保証する。
Isolation (独立性):同時に処理されている他のトランザクションに影響を受けず、また、他の処理に影響を与えないことを保証する。
Durability (永続性):トランザクションが完了したらデータベースに記録され、結果が失われることが無いことを保証する。
@ 原子性に反するので間違い。
A 正しい。JDBC (Java DataBase Connectivity) などのように、トランザクションの開始指示を必要としない製品がある。
B トランザクションの COMMIT により、全てのデータ操作が実行される。
C トランザクションの ROLLBACK により、全てのデータ操作が取り消される。
D 複数同時に実行する場合、独立性により一貫性が保たれる。
T−14 | 目次 | T−16 |