Background Image

FORUM

조회 수 10228 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

VB 6.0   ADODB 로 프로그래밍 중입니다

 

abcd 라는 테이블에 컬럼이 aaa 라고 있고 varchar(100) 입니다

 

이 테이블에는 데이터가

111

222

333

 

이렇게 3 row 가 있습니다

 

vb 상에서

 


    Conn.BeginTrans
   
    SQL = "insert into abcd(aaa) values ('444');"
    call Conn.Execute(SQL)
   
    SQL = "insert into abcd(aaa) values ('555');"

    call Conn.Execute(SQL)


    SQL = "insert into abcd(aaa) values ('666');"
    call Conn.Execute(SQL)

    Conn.CommitTrans
   

코드를 이렇게 작성하였는데  CommitTrans 직전에 (CommitTrans 하기전에) 브레이트 포인트를 걸고

질의편집기에서 확인해 보니 444~666 까지 다 인서트가 되어 있더군요

 

CommitTrans 를 하니까 역시나 444~ 666까지 그대로 있었고, CommitTrans 가 아닌 RollbackTrans 를 하게 되면

RollbackTrans 직전에 테이블을 보면 444~666 까지 인서트가 되어 있는데 RollbackTrans 를 하면

111~333 까지만 나옵니다

 

제가 하고자 하는 작업은 트랜잭션을 걸어서 인서트를 하는 동안에는 인서트 하고 있는 내용이 다른사람의

SELECT 작업시에 나오지 않다가, 커밋을 하게 되면 그때 나오게 하는 방법이 있는지 궁금합니다

 

위 작업을 예로 들면

 

CommitTrans 직전에 (CommitTrans 하기전에) 브레이트 포인트를 걸고

질의편집기에서 확인해 보면 111~333 까지만 나오고,

CommitTrans  한 다음 확인해 보면 111~666 까지 나오게 할 수 있는건지 알고 싶습니다

 

제가 말주변이 없어서 제 질문의도가 글에 잘 나타났는지 모르겠네요 다시 설명하자면,

제가 인서트 또는 업데이트 작업 도중에 테이블을 일종의 잠금(?) 설정을 하여서, 다른 사람들은

제가 작업 완료전에는 작업전 데이터만 보여지게 하고 제가 작업완료 명령을 내린 후에

인서트나 업데이트한 내용이 다른사람에게 보여지게 할 수 있는지 입니다

 

참고로 질의편집기는 dba 권한으로 실행하였고, vb 에서는 따로 아이디를 만들어서 접속하였습니다

 

  • ?
    유니콘 2011.03.03 03:40

    update 도 마찬가지네요 커밋하기 전인데 이미 업데이트가 되어 버리네요

  • ?
    cubebridge 2011.03.05 02:44

    아래의 사항은  cubrid.conf에 parameter로 관리되는 부분입니다. 아래의 설정에 따라 transaction수준이 변동되게 되어 있는데 default는 "REPEATABLE READ CLASS with READ UNCOMMITTED INSTANCES"입니다.

    원하시는 transaction수준 설정을 위해서는 "REPEATABLE READ CLASS with READ COMMITTED INSTANCES"으로 변경해 주시면 됩니다. 관련한 자료를 아래와 같이 첨부하며, 해당 내용은 온라인 메뉴얼에서 확인하실 수 있습니다.

    CUBRID가 지원하는 격리 수준

    격리 수준 이름

    설명

    SERIALIZABLE (6)

    모든 동시성 관련한 모든 문제들(더티 읽기, 반복 불가능한 읽기, 유령 읽기)이 발생하지 않는다

    REPEATABLE READ CLASS with 
    REPEATABLE READ INSTANCES
     (5)

    트랜잭션 T1이 테이블 A를 조회하는 중에 다른 트랜잭션 T2가 테이블 A의 스키마를 갱신할 수 없다.
    트랜잭션 T1이 특정 레코드를 여러 번 조회하는 중에, 다른 트랜잭션 T2가 삽입한 레코드 R에 대한 유령 읽기를 경험할 수 있다.

    REPEATABLE READ CLASS with 
    READ COMMITTED INSTANCES

    (or CURSOR STABILITY) (4)

    트랜잭션 T1이 테이블 A를 조회하는 중에 다른 트랜잭션 T2가 테이블 A의 스키마를 갱신할 수 없다.
    트랜잭션 T1이 레코드 R을 여러 번 조회하는 중에, 다른 트랜잭션 T2가 갱신하고 커밋한 R' 읽기(반복 불가능한 읽기)를 경험할 수 있다.

    REPEATABLE READ CLASS with 
    READ UNCOMMITTED INSTANCES
     (3)

    격리 수준 디폴트 값.
    트랜잭션 T1이 테이블 A를 조회하는 중에, 다른 트랜잭션 T2가 테이블 A의 스키마를 갱신할 수 없다.
    트랜잭션 T1이 다른 트랜잭션 T2가 갱신한 후 커밋하지 않은 레코드 R' 읽기(더티 읽기)를 경험할 수 있다.

    READ COMMITTED CLASS with 
    READ COMMITTED INSTANCES
     (2)

    트랜잭션 T1이 테이블 A를 여러 번 조회하는 중에, 다른 트랜잭션 T2가 스키마를 갱신하고 커밋한 테이블 A' 읽기(반복 불가능한 읽기)를 경험할 수도 있다.
    트랜잭션 T1이 레코드 R을 여러 번 조회하는 중에, 다른 트랜잭션 T2가 갱신하고 커밋한 R' 읽기(반복 불가능한 읽기)를 경험할 수 있다.

    READ COMMITTED CLASS with 
    READ UNCOMMITTED INSTANCES
     (1)

    트랜잭션 T1이 테이블 A를 여러 번 조회하는 중에, 다른 트랜잭션 T2가 스키마를 갱신하고 커밋한 테이블 A' 읽기(반복 불가능한 읽기)를 경험할 수도 있다.
    트랜잭션 T1이 다른 트랜잭션 T2가 갱신한 후 커밋하지 않은 레코드 R' 읽기(더티 읽기)를 경험할 수 있다.


  1. CUBRID 사용자를 위한 DBeaver 도구 출시 안내

    Date2024.04.23 Byadmin Views54
    read more
  2. SQLGate for CUBRID 영구 무료 라이선스 제공

    Date2020.04.09 Byadmin Views4460
    read more
  3. substr 질의결과

    Date2013.09.27 Byagkim Views10157
    Read More
  4. 데이터 추출 관련 질문입니다.

    Date2010.09.08 By노스 Views10157
    Read More
  5. 큰 자리수 연산 문의

    Date2013.08.01 By초콜릿75 Views10163
    Read More
  6. comment 기능 질문입니다.

    Date2017.01.24 ByHnyy.J Views10165
    Read More
  7. 라이선스 관련 문의 할게 있습니다.

    Date2010.04.16 By이프 Views10169
    Read More
  8. migration tool을 이용해 마이그레이션 작업 중 테이블의 데이터 적재 실패 문제

    Date2011.07.11 By엔하늘 Views10172
    Read More
  9. ODBC, OLEDB 별도 설치 방법좀 알려주세요...

    Date2009.08.16 By배우자.. Views10177
    Read More
  10. 중국어 XP에서는 큐브리드 ODBC를 사용 할 수 없나요??

    Date2009.12.10 By푸른잔디 Views10178
    Read More
  11. migration 후 EntityGraph 기능 에러 관련 문의드립니다.

    Date2016.06.22 By박종훈 Views10184
    Read More
  12. 테이블 파티션 문의

    Date2010.04.09 By초보 Views10186
    Read More
  13. 큐브리드용 웹보드 문의

    Date2011.01.27 By유니콘 Views10190
    Read More
  14. 다중 (3중) 조인의 경우, 조인 키 순서에 따라 join 의 종류가 달라지나요?

    Date2018.12.24 By신비로운입 Views10195
    Read More
  15. 함수 사용시 한글 깨짐 현상

    Date2016.06.28 By펌피 Views10197
    Read More
  16. 큐브리드에서 오라클로 연동할 수 있나요?

    Date2009.11.02 By현쥬리 Views10198
    Read More
  17. Visual Basic 관련 문의

    Date2009.06.19 By방랑아 Views10206
    Read More
  18. ibatis에서 create문 생성

    Date2017.03.01 Bykkong Views10207
    Read More
  19. 텍스트 데이터의 검색관련 해서 질문합니다.

    Date2016.07.11 By나이즈 Views10208
    Read More
  20. 큐브리드 커넥션 유지 시간

    Date2010.02.02 By초보 Views10218
    Read More
  21. 테이블 필드 추가 후 위치변경 하기

    Date2010.11.29 By건빵 Views10222
    Read More
  22. weblogic 연결시 에러 발생

    Date2014.02.18 By다솜마루 Views10223
    Read More
Board Pagination Prev 1 ... 139 140 141 142 143 144 145 146 147 148 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales