我是个DELPHI新手,求救各位帮!
我用DELPHI做数据库前台,在DataModuleADO模块中放了ADOConnection和ADOQuery控件,利用ADOQuery进行“书号”录入前的判断,可运行是却出现  ADOQuery1:Parameter 'Code'not found    的错误,请各位帮忙,谢!begin
       with DataModuleADO.ADOQuery1 do
       begin
                SQL.Clear;
                SQL.Add('select * from Book where Code :Code');//Code是书号的列名
                Parameters.ParamByName('Code').value :=Edit1.Text;
                Open;
                if RecordCount<>0 then //书名存在
                begin
                        MessageDlg('书号<' + Edit1.Text + '>已存在',MTERROR,[MBOK],0);
                        edit1.SetFocus;
                        exit;
                else
                        ............//录入
                        
                end;
                close;
        end;
end;

解决方案 »

  1.   

    这样吧:
    SQL.Clear;
    SQL.Add('select * from Book where Code ='''
             + Edit1.Text + '''');
    Open;
      

  2.   

    SQL.Add('select * from Book where Code = :Code')
    很奇怪,你的那一句为什么差一个等号呢?
      

  3.   

    SQL.Add('select * from Book where Code = :Code')
    如果这样的话 还是不行的话 那么就不要参数了 直接写吧 不知道为什么 有的时候就是有这个莫名其妙的问题的 我也是遇见过的 你再试试吧
      

  4.   

    RecordCount有时不能返回查询到的数据的个数,我是这样写的:
    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from book where code='''+edit1.text+'''');
    try
      adoquery1.open;
    except
      showmessage('open book table error');
    end;
    if adoquery1.eof then
      showmessage('cannot fount')
      esle
      记录存在....