全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1249
推到 Plurk!
推到 Facebook!

ado connect to db 一問

尚未結案
ken312
一般會員


發表:13
回覆:12
積分:5
註冊:2003-08-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-25 12:21:24 IP:202.175.xxx.xxx 未訂閱
我想check ado 可以connect到db 就做formCreate,否則做showmessage disconnect(*唔出error message), 可以點做? 即係點可以check program online thx
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-25 12:57:41 IP:63.84.xxx.xxx 未訂閱
您好!    試試ADOConnection元件的EventStatus引數:
begin
  if EventStatus = esOK then
    Form2.Show;
  if EventStatus = esErrorsOccured then
    ShowMessage('連結資料庫失敗');
end;
參考看看! ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
ken312
一般會員


發表:13
回覆:12
積分:5
註冊:2003-08-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-25 16:47:36 IP:202.175.xxx.xxx 未訂閱
依然是不行,問題出自我現在只有一張form, 張form裹面我開了adoconnection, 可不可以run program時,如果offline,可以立即出message. 但現在我offline 時,出了error message'[ConnectionOpen(Connect())]sql server does not exist or access denied.'
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-09-25 16:56:34 IP:202.39.xxx.xxx 未訂閱
procedure TForm1.FormCreate(Sender: TObject);
begin
  try
    ADOConnection1.Connected := True;
  except
    on E: Exception do
      ShowMessage('Error');
  end;
另外, 在 IDE 下用 try .. except 仍出現您說的錯誤訊息是正常的, 只要直接執行 exe 檔就不會 若不想在 IDE 內跳出 Exception 訊息 在 Project -> Debugger Options 的 Language Exceptions 頁中 底下有個 Stop on Delphi Exceptions 的 CheckBox 取消即可. --- 歡迎光臨 KTop 研究院
ken312
一般會員


發表:13
回覆:12
積分:5
註冊:2003-08-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-09-25 17:48:22 IP:202.175.xxx.xxx 未訂閱
都是不行, 出了一樣的error message,
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-09-25 18:23:37 IP:63.84.xxx.xxx 未訂閱
您好﹗    如下程式碼和說明﹐參考看看﹗ 在Form的OnCreate事件中﹕
procedure TForm1.FormCreate(Sender: TObject);
begin
  Try
    ADOConnection1.Connected := True;
  Except
    On E: Exception do
      begin
        ShowMessage(E.Message);//如果偵測到不能連線﹐即出現出錯信息
        Application.Terminate;//退出程式﹐即不啟動
      end;
  end;
end;
在ADOConnection元件的OnDisConnected事件中﹕
procedure TForm1.ADOConnection1Disconnect(Connection: TADOConnection;
  var EventStatus: TEventStatus);
begin
  ShowMessage('ADOConnection元件已經斷開与資料庫的連線');
  //如果ADOConnection与資料庫斷線﹐則出現此信息
  Application.Terminate;//退出程式
end;
您可以在Form中加一個Button元件﹐在其OnClick事件中寫入﹕
procedure TForm1.Button2Click(Sender: TObject);
begin
  ADOConnection1.Connected := False;
end;
//利用手動斷開連線的方式﹐來測試ADOConnection元件的OnDisConnected事件中的程式碼
===================== 努力,相信會獲得美麗! 忻晟 發表人 - cashxin2002 於 2003/09/25 18:26:13
------
忻晟
ken312
一般會員


發表:13
回覆:12
積分:5
註冊:2003-08-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-09-26 10:15:20 IP:202.175.xxx.xxx 未訂閱
但在當我用trace into mode(ctrl F7), 電腦指FormCreate 的adoconnection1.connected:=true, 之後出現error, 有冇ideas? thx very much
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-09-26 10:31:15 IP:202.39.xxx.xxx 未訂閱
另外, 在 IDE 下用 try .. except 仍出現您說的錯誤訊息是正常的, 只要直接執行 .exe 檔就不會 若不想在 IDE 內跳出 Exception 訊息 在 Project -> Debugger Options 的 Language Exceptions 頁中 底下有個 Stop on Delphi Exceptions 的 CheckBox 取消即可. 以上這段您有試過嗎? 小弟剛又試了一下, 是可以的. --- 歡迎光臨 KTop 研究院
系統時間:2024-11-23 16:38:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!