커밋 및 롤백으로 코드의 거래에 액세스합니다
-
20-09-2019 - |
문제
오류가 있으면 일부 데이터베이스 변경 사항을 롤백하도록 요청 받았습니다.
Commit 또는 Rollback과 함께 거래를 사용하기 시작하기 전에 MS Access에서 다음을 수행 할 수 있는지 말해 줄 수 있습니까?
void Start() {
try {
AccessDatabaseOpen(); // Opens the access database
foreach (File in FileList) {
AccessTransactionStart(); // Starts the Transaction
AccessWriteSectionDataFromFile();
AccessWriteEmployeeDataFromFile();
AccessWriteSomethingElseFromFile();
} // go to next File in FileList
AccessTransactionCommit();
} catch {
AccessTransactionRollback();
} finally {
AccessDatabaseClose();
}
}
구문은 엉망이되지만 코드의 루틴이 트랜잭션을 시작하고 다른 여러 루틴을 호출하며 모든 것을 커밋하거나 롤백 할 수 있습니까? 아니면이 아이디어가 믿게됩니까?
고마워요, 조
해결책
코드의 루틴이 트랜잭션을 시작하고 다른 여러 루틴을 호출하고 모든 것을 커밋하거나 롤백 할 수 있습니까?
그렇습니다. 이것은 거래 처리의 기본 아이디어이며, 요약 된 예는 코드에서이를 처리하는 표준 접근법입니다. 세부 사항은 특정 상황/요구 및 사용 된 데이터베이스 시스템 (예 : 중첩 트랜잭션, 범위, 동시성 처리 등)에 따라 다릅니다.
데이터베이스 추상화 계층이 관련된 경우, 종종 일부 설정/매개 변수로 구성 할 수있는 암시 적 트랜잭션 처리가 포함되어 있으므로 해당 세부 사항을 확인하십시오.
제휴하지 않습니다 StackOverflow