關於資料庫關聯用ComboBox的問題 |
答題得分者是:supman
|
lksop
一般會員 ![]() ![]() 發表:3 回覆:4 積分:1 註冊:2005-04-09 發送簡訊給我 |
想請問一下,今天我有一個學生的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 發送簡訊給我 |
|
lksop
一般會員 ![]() ![]() 發表:3 回覆:4 積分:1 註冊:2005-04-09 發送簡訊給我 |
引言: 您好: 建議您可以將老師的名字中的姓氏做一個分類,先選姓氏,這樣資料就會少很多了. ========================== 不好意思,可能我這樣打產生勿解了,我是想說這樣比較好懂我想表達的, 我這邊遇到的真實情況是,我有一個紀錄客戶資料的table裡面的primary key是客戶代號(B2B)....而我在接受訂單時需要把客戶代號輸進去,因此我用ComboBox來選,所以基本上,我那個ComboBox直接指向整個客戶table的代號,用代號,可能沒辦法像先去判斷性式這樣....... 而這只是其中一個用到的,我們車輛也會有schema是參照到別的table的primary key,因此這種情況我們都用combobox叫來選... 現在怕的就是,當原本的資料,如客戶有幾百筆或幾千筆,用combobox叫出來選似乎也沒什麼意義,而且應該慢的很吧.....所以想說不知道有沒有那位前輩寫過類似的東西,想請教是如何處理這種情況的.. |
supman
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
|
lksop
一般會員 ![]() ![]() 發表:3 回覆:4 積分:1 註冊:2005-04-09 發送簡訊給我 |
|
supman
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |