+ -
当前位置:首页 → 问答吧 → delphi 出现ole error 是不是sql格式问题?

delphi 出现ole error 是不是sql格式问题?

时间:2011-12-02

来源:互联网

找了半天也没找到原因,高手们帮忙看看,是不是sql格式问题呀。
  ado1.Close;
  ado1.SQL.Clear ;
  ch:=y+m;

  ado1.SQL.add('select count(*) from TBL_RiZiLiao where D_mon='''+ch+'''and QuZhanHao='''+iii+'''');
  ado1.Open ;
  k:=ado1.Fields[0].AsInteger;
  if (md>0) and (md<32) and (K<md) then begin
  if k>0 then //如果库中已有本月的部分资料,则先删除之
  begin
  ado1.close;
  ch:=y+m;
  ado1.SQL.add('delete from TBL_RiZiLiao where D_mon='''+ch+'''and QuZhanHao='''+iii+'''');
  ado1.ExecSQL ;
  end ;
  for d:=1 to md do
  begin
  A_File_Int('',pchar('date='+inttostr(d)+#0)); //定义一个默认的参数date(日期)

  ado1.close;
  ado1.SQL.Clear ;
  sql:= 'insert into TBL_RiZiLiao (QuZhanHao,RiQi,MP,MAXP,MINP,MT,MAXT,MINT)';
  sql:=sql+ 'values(:QuZhanHao,:RiQi,:MP,:MAXP,:MINP,:MT,:MAXT,:MINT)';
  ado1.SQL.add(sql);
  ch:=inttostr(d);
  if d<10 then ch:='0'+ch;
  ch:=y+m+ch;
  ado1.Parameters.ParamValues['QuZhanHao']:=iii;
  ado1.Parameters.ParamValues['RiQi']:=ch;
  。
  。
  ado1.ExecSQL ;
  end;{ for d:=1 to md do}

作者: miceyou   发布时间: 2011-12-02

ole不是SQL语句,SQL写错了是语法错误。

作者: foxyy8888   发布时间: 2011-12-02

热门下载

更多