我用adoquery1.add('update .....')执行以后会出错.
应该用什么控件执行更新?

解决方案 »

  1.   

    不能用Open
    而应该用ExecSql
      

  2.   

    adoquery.clos
    先清掉adoquery.clear
    再adoquery.sql.text:=''update .....'
    adoquery.exce
    应该不会错了!
      

  3.   

    用ExecSql有返回值吗?需要传给某个参数吗???
      

  4.   

    没有返回值的. with ADOQuery1 do
          begin
            Close;
            SQL.Clear;
            SQL.Text:='update....';
            execsql;
          end;
      

  5.   

    楼上正解,不过一般是sql.add('');
      

  6.   

    execsql有返回值,返回值为刚才sql操作影响的行数你想要什么返回值?
    如果是表中数据的话可以
    close;
    sql.clear;
    sql.add('update tb set ...');
    sql.add('select sth from tb');
    open;
      

  7.   

    搭车问个问题,在DBExpress中用SQLQuery,select了一个表后,访问SQLQuery1.RecordCount出错,报Oracle找不到表或视图,为什么啊?数据明明已经取得了啊,各字段都能访问的,晕的不行!
      

  8.   

    如果不关心SQL语句的返回结果集,可考虑使用TADOCommand.