Delphi 如何实现多条件查询,求高手指教下 我这段程序对不对

2025-03-06 21:19:22
推荐回答(3个)
回答1:

你自己跟踪一下,
把 ADOquery1.Open; 语句设置中断,
在Run菜单中,
Add Watch...中,
加入“ADOQuery1.SQL.STRING”,
然后把它运行值,拷贝到记事本中,仔细考察一下。

你的第一个复选框,务必总是选定。

回答2:

你checkbox1一定是checked的吗?如果没有就会发生这个错误。要不然你可以把第一句改成固定的。还有你可以把你的sql显示出来看看对不对

回答3:

procedure Tstudentcheck.Button1Click(Sender: TObject);
begin

ADOQuery1.SQL.Clear;
ADOquery1.SQL.Add('select * from question where 1=1');
if checkbox1.Checked then

ADOquery1.SQL.Add(' and LessonName='''+combobox5.text+'''');

if checkbox2.Checked then
ADOquery1.SQL.Add(' and LessonUnit='''+combobox1.text+'''');
if checkbox3.Checked then
ADOquery1.SQL.Add(' and LessonDiff='''+combobox2.text+'''');
if checkbox4.Checked then
ADOquery1.SQL.Add(' and LessonScore='''+combobox3.text+'''');
if checkbox5.Checked then
ADOquery1.SQL.Add(' and Style='''+combobox4.text+'''');
ADOquery1.Open;

end;