我有一個數據庫,裏面有'用戶表'。在這個表格中,有列包含用戶信息(網站,尼克,jeton,郵件,sifre)。我正在嘗試基於信用系統制定計劃。任何用戶運行該程序,比如,如果用戶信用等於列表框中的站點數(我的意思是線數)用戶站點將出現在列表框中。否則,它不會出現。如何在任何情況下將列的值提取到列表框?
在數據庫中,「credits」列中的值必須等於listbox中的行數。例如,如果任何用戶的信用值爲4,並且列表框中有5行,則用戶站點將不會被添加到列表框中。但如果用戶的信用值是5或更高,他/她的網站將被添加(列出)在列表框中。
uyeler =表
缺口 =用戶名欄。
網站 =用戶網站名稱列。
jeton =用戶信用欄。
郵件 =用戶郵件列。
sifre =用戶密碼欄。
我試過這些;
MyQuery1.Close;
MyQuery1.SQL.Text :='SELECT jeton, site FROM uyeler WHERE jeton > 0 ORDER BY site';
MyQuery1.Open;
ListBox1.Items.Clear;
If (MyQuery1.IsEmpty) or (MyQuery1.FieldByName('jeton').AsString > IntToStr(Listbox1.Items.Count)) Then
Begin
MessageDlg('warning: you have not credit!', mtWarning,[mbOK],0)
End
Else
Begin
While not MyQuery1.Eof do
Begin
ListBox1.Items.Add(MyQuery1.Fields[1].AsString);
MyQuery1.Next;
end;
MyQuery1.Close;
End;
> *「如果任何用戶的信用值是4,並且有5條線在列表框中,用戶的網站將不會被添加到列表框。但是,如果用戶的信用值是4或更低時,他/她的網站將被添加(列出)在列表框中「*>這沒有意義,您需要的結果與* 4或更低的*和*'4'*不同。 – 2012-08-09 17:25:31
@SertacAkyuz,Pardon,我現在編輯過。 – Ankara 2012-08-09 18:41:29
我很難理解,但無論如何,對於初學者來說,它看起來像對特定用戶的學分感興趣,但是您的select語句將檢索所有* jeton> 0的記錄。您可能需要選擇該用戶的記錄(其中(nick = xyz)和(jeton> 0)),或者在查詢中找到該特定用戶的記錄。我建議您將DBGrid附加到您的查詢中,以便確保您的查詢正在檢索您打算的記錄。我可能會誤解。 – 2012-08-09 20:13:24