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

 

 

 

블로그 이미지

사용자 자연&사람

행복한 개발자 programmer since 1995.

Tag , ,

댓글을 달아 주세요