- 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屬性。
仔細一檢查,靠,第三條。灰頭土臉的取改 。