FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[1588] Re:FireBird 롤백에서 열려진 쿼리가 모두 닫힙니다..
박지훈.임프 [cbuilder] 1610 읽음    2005-10-05 13:21
인터베이스/파이어버드에서는 트랜잭션을 커밋하거나 롤백하면 그 트랜잭션에 연결된 쿼리가 닫히는 것이 기본입니다.
IBExpert에서도 동일하게 동작합니다. 이것은 인터베이스/파이어버드에서는 셀렉트도 트랜잭션에 연관되기 때문입니다.
아래 글을 참고하세요.
http://firebird.borlandforum.com/impboard/impboard.dll?action=read&db=fb_qna&no=1586

만약 그게 문제라면.. 그러니까 트랜잭션 커밋이나 롤백 이후에도 쿼리가 열려있어야 한다면, TClientDataSet을 써보는
것도 방법이겠습니다.


아폴론 님이 쓰신 글 :
: 먼저 조회한 IB쿼리 오픈 합니다.
: IBQuery1.open;
:
: if Datamd.IBTransaction1.inTransaction then Datamd.IBTransaction1.rollback;
:   -- 요기서 IBQuery1이 닫힙니다.
: Datamd.IBTransaction1.StartTransaction;
: try
:   ...
:   ...
:
: 테스트-------------------------------------------
:
:    if Datamd.TIBDatabase1.Connected = true then
:       showmessage('열려있네') else  ==>열려있다
:       showmessage('닫혀있네');
:    if Datamd.IBTransaction1.inTransaction then Datamd.IBTransaction1.rollback;
:
:    if Datamd.TIBDatabase1.Connected = true then
:       showmessage('열려있네') else  ==>열려있다
:       showmessage('닫혀있네');
: 데스트 완료-------------------------------------------
: 데이터베이스도 연결이 되어 있는데 왜 IBQuery가 닫히는 것인가요?

+ -

관련 글 리스트
1587 FireBird 롤백에서 열려진 쿼리가 모두 닫힙니다.. 아폴론 1378 2005/10/05
1588     Re:FireBird 롤백에서 열려진 쿼리가 모두 닫힙니다.. 박지훈.임프 1610 2005/10/05
1593         Re:Re:FireBird 롤백에서 열려진 쿼리가 모두 닫힙니다.. 아폴론 1232 2005/10/05
1590         감사합니다 아폴론 1051 2005/10/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.