안녕하세요...
쿼리문을 날려서 DB와 연결해서 프로그램이 실행될때...
DB 서버가 죽어있다면.. 프로그램이 다운되어 버리는데..
그걸 어떻게 다르게, 에러가 발생하면 "서버가 다운되었습니다." 라는
메시지가 나오도록 하게 할려면..
어떻게 해야 합니까???
쿼리문은 아래와 같습니다.
------------------------------
procedure Form1.Show();
begin
Query2.Open;
Query2.Locate('id', loginid, [loCaseInsensitive]);
loginid := Query2.fieldbyname('j_id').asString;
ShowMessage(loginid);
Query2.Close;
end;
------------------------------
> 안녕하세요...
>
> 쿼리문을 날려서 DB와 연결해서 프로그램이 실행될때...
> DB 서버가 죽어있다면.. 프로그램이 다운되어 버리는데..
>
> 그걸 어떻게 다르게, 에러가 발생하면 "서버가 다운되었습니다." 라는
> 메시지가 나오도록 하게 할려면..
>
> 어떻게 해야 합니까???
>
> 쿼리문은 아래와 같습니다.
>
> ------------------------------
>
> procedure Form1.Show();
> begin
> Query2.Open;
> Query2.Locate('id', loginid, [loCaseInsensitive]);
> loginid := Query2.fieldbyname('j_id').asString;
>
> ShowMessage(loginid);
> Query2.Close;
> end;
>
> ------------------------------
>
안녕하세여..
Try.. Except 구문을 사용하면 될것 같군여..
일반적으로 데이타베이스는 StartTransaction과 Try.. Except 구문을 병행해서 사용하지만.. 그저 단순한 쿼리문의 경우에는..
Try.. Except 구문만으로도 원하시는 메시지를 다운없이 보여줄 수 있을거 같네여..
자세히는 못쓰지만.. Try.. Except 구문은 델파이 참고서적이라면 어디든 쉽게 찾을 수 있을 겁니다..
Ex) Try
...쿼리문..
Flag := 0; //처리됐음을 알리는 플래그 변수..
Except
Raise:
Flag := 1;
end;
if Flag = 1 then
Showmessage('서버가 다운......');
서투른 답변일지 모르겠습니다만.. 아마 문제 해결은 될것 같네여..
그럼.. 수고!! (^^#);