Classic ASP DB 트랜잭션 처리 - Commit, Rollback

Classic ASP DB 트랜잭션 처리 – Commit, Rollback

프로그램을 개발하다 보면 DataBase 트랜잭션(Transaction) 처리가 필요할 때가 있습니다. 저 같은 경우는 모든 Classic ASP 페이지에 트랜잭션 처리는 않고 필요하다고 판단될 때 트랜잭션 처리합니다. 예를 들어 동시접속자가 많은 페이지 또는 배치성 페이지 같은 경우는 Classic ASP 페이지를 하나의 트랜잭션으로 묶어 처리합니다.

그럼 간단한 예제를 통해서 Classic ASP에서 어떻게 트랜잭션 처리하는지 알아보죠.

사용 예제

<% Option Explicit %>
     
<%
   ' 에러처리 활성화
   On Error Resume Next

   Dim DbErrCnt, strSql
   DbErrCnt = 0

   ' Database 연동 (ODBC)
   Set Db = Server.CreateObject("ADODB.Connection")
   Db.Open ("DSN=BlueShare; UID=BlueShare; PWD=~~~~~")

   ' 트랜젹션 시작
   Db.BeginTrans()

   ' UPDATE 처리
   strSql = " UPDATE 테이블 SET ~~~ "
   Db.Excute (strSql)

   DbErrCnt = DbErrCnt + Db.errors.count

   ' INSERT 처리
   strSql = " INSERT INTO 테이블 () VALUES () "
   Db.Excute (strSql)
   
   DbErrCnt = DbErrCnt + Db.errors.count

   If DbErrCnt > 0 Then
      ' 오류 발생시 Rollback 처리
      Db.RollbackTrans()
   Else
      ' 오류가 없는 경우 commit 처리
      Db.CommitTrans()
   End if

   Db.Close
   Set Db = Nothing

   ' 에러처리 중단
   On Error Goto 0
%>

함께 보면 좋은 게시글

위로 스크롤