以下这个程序,运行时发现 DBGrid1只显示字段名,而记录一条都没有显示,而且也没出现“无此书,请重新查询”提示框,我检查了一下数据库没错,可能是SQL语句有问题,望给予指教为盼procedure TForm2.Button5Click(Sender: TObject);
begin
if edit3.text='' then
begin
showmessage('请输入书号!');
abort;
end;
with ADOQuery3 do
begin
Close;
with SQL do
begin
Clear;
Add('Select Bno,Bname');
Add('from book');
Add('where book.Bno='+ QuotedStr('Edit3.text'));
end;
Open;
end;
if ADOquery3.fieldByname('Bno').value='' then
begin
showmessage('无此书,请重新查询!');
edit3.Clear;
end;
end;
begin
if edit3.text='' then
begin
showmessage('请输入书号!');
abort;
end;
with ADOQuery3 do
begin
Close;
with SQL do
begin
Clear;
Add('Select Bno,Bname');
Add('from book');
Add('where book.Bno='+ QuotedStr('Edit3.text'));
end;
Open;
end;
if ADOquery3.fieldByname('Bno').value='' then
begin
showmessage('无此书,请重新查询!');
edit3.Clear;
end;
end;
->
Add('where book.Bno='+ QuotedStr(Edit3.text));
或者
ADOquery3.fieldByname('Bno').isnull