Parameter not found的出現的原因


  with dataM.Q_xfgl_dhjf do
  begin
    close;
    sql.Clear;
    sql.Add('insert into jfdh(jfdh_id,jfdh_hybh,jfdh_dhjf,jfdh_bz,jfdh_sj,jfdh_czr) ');
    sql.Add('values(:jfdh_id,:jfdh_hybh,:jfdh_dhjf,:jfdh_bz,:jfdh_sj,:jfdh_czr);') ;
    
    Parameters.ParamByName('jfdh_id').Value := getid();
    parameters.ParamByName('jfdh_hybh').Value := hy_id;
    parameters.ParamByName('jfdh_dhjf').Value := strtoint(edit1.Text);
    parameters.ParamByName('jfdh_bz').Value := memo1.Text;
    parameters.ParamByName('jfdh_sj').Value := now;
    parameters.ParamByName('jfdh_czr').Value := user;
  end;

以前都是這么用的,可是今天卻一直提示Parameter jfdh_id not found,把Parameters.ParamByName('jfdh_id').Value := getid();這句注釋掉后,就提示后邊的參數沒有找到。

有人說values后要加空格,加了不行。重新寫一遍,看是不是輸入漢字字符了?試了各種方法,還是沒解決問題.

后來看到有高人總結了三種原因 :

出現   ADOQuery1   :   parameter   "***r"   not   found   的提示的原因:  
  1、SQL語句本身無參數;  
  2、ADOQuery1的ParamCheck屬性為False;  
  3、未設置ADOQuery1的Connection或ConnectionString屬性。  

仔細一檢查,靠,第三條。灰頭土臉的取改 。
---------------------
作者:hank5658
來源:CSDN
原文:https://blog.csdn.net/hank5658/article/details/3238180
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM