COMMIT / ROLLBACK 하기
DBMS에서 INSERT, UPDATE, DELETE 등의 문장으로 실행한 SQL문을 실제 DBMS에 반영 또는 취소를 하기 위해서 COMMIT 또는 ROLLBACK을 수행하게 됩니다. Pro*C에서 COMMIT 또는 ROLLBACK하는 방법에 대해서 알아보겠습니다.
1. Default Connection에 대한 Commit / Rollback
Commit 하기
EXEC SQL COMMIT WORK;
Rollback 하기
EXEC SQL ROLLBACK WORK;
일반 Connection Commit / Rollback
default connection이 아닌 경우는 EXEC SQL CONNECT 문에서 AT 절의 형식과 똑같이 AT절에 표시해야 합니다.
Commit 하기
EXEC SQL AT :db_con1 COMMIT WORK; /* host variable을 통하여 connection명 지정시 */
또는
EXEC SQL AT DB_CON1 COMMIT WORK; /* DECLARE를 통한 Connection명 지정시 */
Rollback 하기
EXEC SQL AT :db_con1 ROLLBACK WORK; /* host variable을 통하여 connection명 지정시 */
또는
EXEC SQL AT DB_CON1 ROLLBACK WORK; /* DECLARE를 통한 Connection명 지정시 */
DB 접속 해제(DISCONNECT) 하기
Pro*C에서는 접속 해제 시에 반드시 COMMIT하고 종료할 것인지, ROLLBACK을 하고 종료할 것인지를 선택해야 합니다. 그래서 DBMS에서 접속을 해제할 때에는 COMMIT 또는 ROLLBACK하는 방법 뒤에 RELEASE만 추가하면 됩니다.
1. Default Connection에 대한 접속 해제
Commit후 접속해제
EXEC SQL COMMIT WORK RELEASE;
Rollback후 접속 해제
EXEC SQL ROLLBACK WORK RELEASE;
2. 일반 Connection에 대한 접속 해제
Default connection이 아닌 경우는 EXEC SQL CONNECT 문에서 AT 절의 형식과 똑같이 AT절에 표시해야 합니다.
Commit후 접속 해제
EXEC SQL AT :db_con1 COMMIT WORK RELEASE; /* host variable을 통하여 connection명 지정시 */
또는
EXEC SQL AT DB_CON1 COMMIT WORK RELEASE; /* DECLARE를 통한 Connection명 지정시 */
Rollback후 접속 해제
EXEC SQL AT :db_con1 ROLLBACK WORK RELEASE; /* host variable을 통하여 connection명 지정시 */
또는
EXEC SQL AT DB_CON1 ROLLBACK WORK RELEASE; /* DECLARE를 통한 Connection명 지정시 */
See Also : Pro*C 목차 및 Sample Source
'Oracle > Pro*C' 카테고리의 다른 글
Pro*C 5-2. 오류 처리하기 (WHENEVER) (0) | 2019.09.25 |
---|---|
Pro*C 5-1. 오류 처리하기 (SQLCA) (0) | 2019.09.25 |
Pro*C 4. 기본 SQL문 실행 (0) | 2019.09.25 |
Pro*C 3. 변수선언과 INCLUDE (0) | 2019.09.25 |
Pro*C 1. DBMS에 접속하기 (1) | 2019.09.25 |