我在QUery中写了一个删除语句
 delete from dbo.teach_info_bak where teach_id=:iidd
  已经给变量iidd赋了类型,可为什么还要报错说是错误的?

解决方案 »

  1.   

    iidd赋了类型不够~~要赋值QUery.parambyname('iidd').value
      

  2.   

    DELETE 后面是没有 FROM 的哦。
      

  3.   

    看一下是什么错误先,你可以把此句SQL 在query analyzer里执行一下,看是否可以通过。
      

  4.   

    delete dbo.teach_info_bak where teach_id=:iidd
      

  5.   

    我就是在query analyzer里执行里执行不过说是‘error creating cursor handle'是怎么回事啊?
      

  6.   

    在代码后加dbo.teach_info_bak.Execute
      

  7.   

    好像,sql里等号的后面也没有冒号
      

  8.   

    jsandy(江苏安迪) 说得对呀
    query.sql.add('delete dbo.teach_info_bak where teach_id=:iidd');
    QUery.parambyname('iidd').value:=赋值;
    如果还不行看看你的query连接好了没?
      

  9.   

    SQL没错,请检查其它地方有没错!
    例如:
    var
      i: integer;
    begin
      try
    ......
        i := strtoint(edit1.Text);
        query.sql.add('delete dbo.teach_info_bak where teach_id=:iidd');
        QUery.parambyname('iidd').value:=i;
    ......
      except
      end;
    end;