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

C++빌더 Q&A
C++Builder Programming Q&A
[63859] Re:Re:ADOConnection에 대해서
알론소 [smire4454] 1377 읽음    2011-03-03 09:30
우선 답변감사드립니다.
제가 정리를 안해서 썼나보군요.ㅠㅠ
아무튼 답변하신 내용을 읽어봤는데요.

디비와 연결이 끊어졌는데 다시연결하면
당연히  select가 안된다고 하셨는데
왜 안되는지 궁금해요..
다시 연결되었으니까 디비에서 읽어올수도있고
넣을수도있지않나요??

ADO Component에서 끊어졌는지 안끊어졌는지
알려주지않으니 나름대로 타이머만들어서
일정주기가 되면  select문을 통해 의미없는
쿼리를 날리는걸 해놨구요
exception이 떨어진다면
끊어졌거나뭐 에러라고 생각하여
close  시키고 다시 open시킵니다

근데 open을 해서 재연결해도 select가 되질않으니
db접속정보를 다시 넣어야하나 해서
다시넣어서 open해서 재연결했더니
역시나 select도안되지 insert도안되고 다안되니까
전 이부분이 왜 안되는지 궁금합니다

위에도 썼지만 다시 open 시켜 재연결해서
select가 당연히 안되는거라면
왜안되는지도 궁금하구요..ㅠㅠ
안되는거라면 재연결해서 다시 디비를 읽는
방법없을까요.ㅠㅠ






땅주인 님이 쓰신 글 :
: 알론소 님이 쓰신 글 :
: : ADOConnection을 생성시키고
: : DB접속정보를 입력한뒤에
: : Open()함수를 이용해서 오픈시키거든요
: :
: : 근데 만약에 DB와 연결이 끊어졌는데
: : select라던지 update가 안되고
: : 오라클 연결접속 에러라던지 이런 에러가뜨면
: :
: : 이제 ADOConnection은 CLOSE가 되고
: : 연결 안되었으니
: : conneted는 false가 될것이고
: :
: : 계속 DB와의 재접속을 시도하는데
: : OPEN()가 되면 이제 연결이 된거잖아요
: :
: : 그럼 이제 SELECT라던디 INSERT UPDATE같이
: : 이런 것들을 수행이 되야하는데 연결이되었으니
: : 연결만 되었을뿐이지
: : 수행이 되지않으면 무슨문제인가요???
: :
: : 연결이 끊어지지않는다면 문제는 안생깁니다.
: : 근데 연결이 끊어지고 다시 재접속 되는경우에
: : 연결은 되었는데 select가 안되는거에요 물론 db에 데이터도
: : 들어가지도않구요
: :
: : 그래서 다시 연결되어서 open()을 할때
: : 그전에 디비접속정보를 다시 또넣었습니다.
: : 그런대도 안되던데 왜그런지모르겠습니다
: :
: : 도움좀주세요.ㅠㅠ
:
: 정리를 좀 해서 쓰시지.. 읽어봐도 아리까리 해서..
: 암튼..
: 디비가 끊어진 상태에서 insert를 하고(당연히 Exception이 나겠지요..)
: 다시 디비를 연결해서 select를 하면 데이터는 당연히 없겠지요.
:
: MySQL에서 그런 경우를 보았는데.. 세션 유지 시간을 짧게 잡아놔서..
: 일정 시간이 지나면 DB Connection이 끊어지는 경우를 보았는데요..
: ADO Component에서 이벤트로 알려주지도 않구요..
: 그래서,
: 일정 시간 주기로 해서 DB에 의미 없는 쿼리를 계속 날리는 것으로 해결을 했는데요.(30초 Term)
: 만약, 이런 쿼리에 응답이 없거나 Exception이 계속 날 겨우 DB가 끊어진 것으로 간주하고
: 재접속하는 루틴등을 만들어 주어야 합니다. DB 접속 상태가 불안한 경우에 한하지요.
:
: 그런데, DB Connection이 불안한 것이 아마 네트워크 상태가 불안하던 지,
: 서버가 상태가 좋지 않던가 그런 경우가 더 많을 것 같네요.
: DB Connection 유지에 많은 공을 드리는 것을 잘 보지를 못해서..
: 암튼, DB가 자꾸 끊어진다면 네트워크나, 서버의 상태를 점검하는게 먼저이지 않을까 하네요.
: 그럼 이만..

+ -

관련 글 리스트
63853 ADOConnection에 대해서 알론소 1336 2011/03/02
63856     Re:ADOConnection에 대해서 땅주인 1873 2011/03/02
63859         Re:Re:ADOConnection에 대해서 알론소 1377 2011/03/03
63861             Re:Re:Re:ADOConnection에 대해서 땅주인 1249 2011/03/03
63868                 Re:Re:Re:Re:ADOConnection에 대해서 알론소 1775 2011/03/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.