線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1002
推到 Plurk!
推到 Facebook!

關於資料庫關聯用ComboBox的問題

答題得分者是:supman
lksop
一般會員


發表:3
回覆:4
積分:1
註冊:2005-04-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-12 13:47:59 IP:61.219.xxx.xxx 未訂閱
想請問一下,今天我有一個學生的schema有一欄"導師",而那欄會是個ComboBox點選後去連結導師的table把導師編號都放進來讓使用者選,但是如果我參照叫過來的table primary key有,幾百個,幾千個,我要讓他來選,是不是是個愚蠢的做法.... 下面是我寫的 ============================= //進去ComboBox會把資料讀進裡面讓使用者選 procedure TCar.ComboBox1Enter(Sender: TObject); var st:Integer; rc:Integer; begin Query3.Close; Query3.SQL.Clear; Query3.SQL.Add('SELECT * From A_Personnel'); Query3.Open; rc:=Query3.RecordCount-1; Query3.First; For st := 0 to rc do begin ComboBox1.Items.Add(Query3.Fields[0].Asstring ':' Query3.Fields[1].Asstring); Query3.Next; end; end; ============================================ //當離開ComboBox會把裡面item清空,不然下次選會不斷累加上去 procedure TCar.ComboBox1Exit(Sender: TObject); begin ComboBox1.Items.Clear; end; ======================== 現在問題就在於,如果我去呼叫的 有幾百筆幾千筆資料,這樣第一,他叫進來不會很慢嘛?還有就是,使用者要選不是非常難選嘛(雖然我讓combobox還是可以輸入並打開autocomplete的功能).... 想請問有沒有比較好的方法可以使用,我覺得我的方法蠻蠢的...... 煩請前輩指點一下
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-12 13:58:12 IP:61.70.xxx.xxx 未訂閱
您好: 建議您可以將老師的名字中的姓氏做一個分類,先選姓氏,這樣資料就會少很多了.
lksop
一般會員


發表:3
回覆:4
積分:1
註冊:2005-04-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-12 15:44:43 IP:61.219.xxx.xxx 未訂閱
引言: 您好: 建議您可以將老師的名字中的姓氏做一個分類,先選姓氏,這樣資料就會少很多了. ========================== 不好意思,可能我這樣打產生勿解了,我是想說這樣比較好懂我想表達的, 我這邊遇到的真實情況是,我有一個紀錄客戶資料的table裡面的primary key是客戶代號(B2B)....而我在接受訂單時需要把客戶代號輸進去,因此我用ComboBox來選,所以基本上,我那個ComboBox直接指向整個客戶table的代號,用代號,可能沒辦法像先去判斷性式這樣....... 而這只是其中一個用到的,我們車輛也會有schema是參照到別的table的primary key,因此這種情況我們都用combobox叫來選... 現在怕的就是,當原本的資料,如客戶有幾百筆或幾千筆,用combobox叫出來選似乎也沒什麼意義,而且應該慢的很吧.....所以想說不知道有沒有那位前輩寫過類似的東西,想請教是如何處理這種情況的..
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-12 16:08:30 IP:61.70.xxx.xxx 未訂閱
您好: 我覺得如果是像這樣的資料,用選的不太合理,如果說您未來資料庫有幾萬筆,甚至幾十萬筆的時候,別說去選到您要的資料,連想載入他都是個問題. 因此我建議是建立一個搜尋介面,讓User可以搜尋,再將資料帶入.
lksop
一般會員


發表:3
回覆:4
積分:1
註冊:2005-04-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-04-12 18:08:05 IP:61.219.xxx.xxx 未訂閱
引言: 您好: 我覺得如果是像這樣的資料,用選的不太合理,如果說您未來資料庫有幾萬筆,甚至幾十萬筆的時候,別說去選到您要的資料,連想載入他都是個問題. 因此我建議是建立一個搜尋介面,讓User可以搜尋,再將資料帶入.
嗯嗯,我也是這樣的問題 這是其中一個畫面,那是否改成在客戶旁邊有一個按鈕,點下去後會跳出一個如同你的搜尋form,選好了之後,在把他丟回客戶代號的edit這樣會比較好吧?? 真是感謝~~
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-04-12 18:23:27 IP:61.70.xxx.xxx 未訂閱
是的,既然您的資料無法歸類,或者歸類後依舊有很多資料,基本上10幾個我就覺得很多了,那我覺得做個搜尋的功能,讓User能用查詢的,且不一定要全部打完,用Like下去查,再將資料帶入,這樣會比較方便. 下面也是我程式的一張圖,就像您所說的Edit旁有一個Button點進去後找資料,再將資料帶入.
系統時間:2024-06-28 18:40:55
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!