我用的是BDE,我想用query更新数据库表里的一个数值。在query的SQL属性写的update语句肯定是正确的。但程序运行的时候总是提示出错。
请问还有什么方法能达到同样的效果。

解决方案 »

  1.   

    with query1 do
    begin
      edit;
      fieldbyname('field1').values:=trim(fieldvalues1);
      ....
      ...
      ....
      ...
      ....
      post;
    end;
      

  2.   

    if  query1.Locate('字段','值',[]) then 
    接楼上的就行了
      

  3.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('update 表 set 字段=某某 where ...');
    query1.ExecSQL;这样就没问题了
      

  4.   

    with query1 do
    begin
      close;
      sql.clear;
    sql.add('update 表名 set 字段名=要改的值 where 满足条件');
    execsql;
    end;
    肯定可以的。
      

  5.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('update 表 set 字段=某某 where ...');
    query1.ExecSQL;我要是大量的字段呢?》20个以上,也set.....???太多的set 了?有好的办法解决呢?
      

  6.   

    我也遇到了这个问题:
    query1.close;
    query1.sql.clear;
    query1.sql.add('update 表 set 字段=某某 where ...');
    query1.ExecSQL;我要是大量的字段呢?》20个以上,也set.....???太多的set 了?有好的办法解决呢?我遇到的是:用一个EXCEL数据库的数据更新SQL数据库的数据(根据SQL数据库的某个字段),
    近来正琢磨这个问题呢?不知道有没有很好的方法?
      

  7.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('update 表 set 字段=某某 where ...');
    query1.ExecSQL;
      

  8.   

    to:回复人: superyys(无血野人)
    你的答案同 “回复人: huazaijiajia(华仔) ”
    现在的问题是:
    根据某个字段值(不同的值)大量更新另一个数据库。
    一个是用ADO访问的EXCEL,另一个是用ADO访问的SQL数据库。