database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 600 게시물 읽기
No. 600
CA400 ODBC에서 트랜잭션 처리
작성자
박성진
작성일
2004-03-09 13:56
조회수
6,164

IBM AS/400과 연동되는 웹서비스 프로그래밍 도중

VB6.0과 ADO로 작성한 DB Handling COM에서 트랜잭션을 걸었을 시

NOT VALID OPERATION FOR [TABLE NAME]의 에러가 리턴되는 문제가 발생했습니다.

 

여느 ADO 프로그래밍과 마찬가지로

FUNCTION SET_DATA(ByVal strSQLQuery As String, ByRef ErrMsg As Variant) As Boolean

 

Dim objRS As ADODB.RecordSet

 

ON ERROR GO TO SET_DATA_ERROR

objCONN.BeginTrans

 

'INSERT PROCESS

Set objRS = objCONN.Execute(strSQLQuery, lngRSAffected)

 

If lngRSAffected = 0 Then

         SET_DATA = False 

         Go To SET_DATA_ERROR

End If

 

objCONN.CommitTrans

        SET_DATA = True

 

SET_DATA_EXIT:

SET objRS = NOTHING

EXIT FUNCTION

 

SET_DATA_ERROR:

objCONN.RollbackTrans

Goto SET_DATA_EXIT

 

END FUNCTION

 

이런 형태로 작성을 하였고, 단계별 실행 디버깅에서 objCONN.BeginTrans까지는 에러 발생없이

돌아가다가 Set objRS = objCONN.Execute(strSQLQuery, lngRSAffected) 이 구문에서

 Not Valid Operation 이라는 류의 에러 메시지가 뜹니다.

 

ODBC 세팅에서 Read Committed, Repeatable Read 등과 같은 트랜잭션 관련 설정등을 바꿔봤지만

도통 먹히지가 않습니다.

 

ADO의 Recordset의 AddNew / Update 메소드를 이용해봤지만 해당 메소드들도 먹지를 않더군요.

 

혹시 비슷한 경험을 해보셨고, 해결하신분들이 계시면 부디 도움을 주십시오.

 

감사합니다.

이 글에 대한 댓글이 총 1건 있습니다.

자문 자답이 되어버렸군요.

 

문제의 원인은 Journaling에 있었습니다.

 

저희 고객의 전산팀에서는 DB생성시 저널링을 걸어놓지 않는다고 하는군요. 습관적으로...

 

IBM Developer Forum을 뒤저본 결과 저널링이 되지 않을 경우 Commit Control이 안된다고 되어있더군요.

박성진님이 2004-03-12 11:28에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
603[질문] AIX용 DB2 ODBC를 사용하는데요..
윤기영
2004-03-12
5644
602TRIM()문을 썻는데 공백이 지워지지가 않는데 이유아시는분 도움을 주세요^^* [4]
김문기
2004-03-11
7697
601redhat(7.3)에서 DB INSTALL후에 관리서버시작에러..대해서 알려주세요??
이시종
2004-03-10
5900
600CA400 ODBC에서 트랜잭션 처리 [1]
박성진
2004-03-09
6164
599DB2에서 제곱근과 제곱 구하는 함수?
농부
2004-03-05
6166
597DB2에서 DBLink를 어떻게 해야 하나요?
김상현
2004-03-03
6032
596DB2에서 String을 Date로 변경시..
db2
2004-02-26
8062
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다