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

請問大大 EDBengineError 的問題

尚未結案
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-01-05 18:39:08 IP:218.103.xxx.xxx 未訂閱
我有一個module 給三個project 用 有兩個project 都沒問題 但有一個用的時候會出現以下error 想請問有什麼可能性會產生
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-01-06 01:51:48 IP:220.132.xxx.xxx 未訂閱
Hi, 看起來是發生問題的專案內, 有兩個 TDatabase 元件, 而 Database name 都設定為 SAMDB 才會發生問題的, 你檢查看看, 應該不難找出!
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-06 09:33:58 IP:218.103.xxx.xxx 未訂閱
我是加了這一段之後才會有問題    
 
    try
         Database1.DataBaseName := DB_NAME;
         Database1.Open;
         Database1.Close;
     except
      on EDBEngineError do
      begin
         MessageDlg('Configuration Error on DataBaseName, Program Terminated',mtInformation,[mbOk],0);
         Halt;
      end;
     end;
請問大大知道問題有什麼可能產生 我也找過整個project 中的 Tdatabase 的元件 也看不出什麼 請幫忙
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-01-06 10:00:44 IP:218.103.xxx.xxx 未訂閱
其實我只是想檢查進去的Database name 存不存在 如果不存在就終止程式 請問大大有其他方法嗎? 另外我不太清楚整個 Tsession , Tdatabase, Alias name , database name 的關係 有大大可以發表一下嗎?
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-01-06 10:09:24 IP:218.103.xxx.xxx 未訂閱
另外我用這個方法 它說找不到 但我確定input的DB_name 是正確的 請問我那裡錯了  
 DB := Session1.FindDatabase(DB_NAME);
     if (DB = nil) then
     begin
         MessageDlg('Configuration Error on DataBaseName, Program Terminated',mtInformation,[mbOk],0);
         Halt;
 
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-01-06 18:04:08 IP:203.95.xxx.xxx 未訂閱
TDatabase 的 DatabaseName 是讓 TQuery / TDataset / TTable 等這類元件去連結時使用的, 之所以會發生 'Duplicate database name 'SAMDB'' 的原因就是因為有兩個 TDatabase 的元件中的 DatabaseName 都設為 SAMDB, 所以會產生這個問題!!    另外利用 TSession 來找 TDatabase 是利用你的方式沒錯. 但要注意的是, 你要找的 TDatabase 的 SessionName 必須是你的 Session1 的 SessionName 才行哦, 否則當然會找不到囉. 你可以 check 你的 Object TreeView 即可明白.     如上圖所示, Session1 的 SessionName 是未設定的, 但 Database1 的 SessionName 是 Default, 所以利用 Session1.FindDatabase('mydb') 是找不到這 Database1 的, 要用 Session.FindDatabase('mydb') 才會傳回 Database1 !!
SamSam1230
中階會員


發表:128
回覆:178
積分:65
註冊:2004-12-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-01-07 12:10:06 IP:218.103.xxx.xxx 未訂閱
謝謝 timhuang 的講解 但我用的是delphi 4.0 請問那裡可以找到 object treeview?
系統時間:2024-05-19 10:38:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!