sql+qdoquery+access 
我要修改数据
把字段“名称”等于“a”的记录改成“b” 怎么实现?
不用UPDATA语句。

解决方案 »

  1.   

    为什么不用update语句  
    sql+qdoquery+access 这里的 sql是什么呀
      

  2.   

    adoquery1.sql.text := 'select * from table where 名称=''a''';
    adoquery1.open;
    adoquery1.edit;
    while not adoquery1.eof do
    begin
      adoquery1.fieldbyName('名称').asstring:= 'b';
      adoquery1.next;
    end;
      

  3.   

    应该加Post 如何记录集移动不加也可以,自动就保存了
      

  4.   

    好奇怪的需求,楼主起码也说说原因吧,也许解决了这个顾虑就可以UPDATE了
      

  5.   

    因为中间涉及很多复杂关联和操作,不是update能解决的。
      

  6.   


      while adoquery1.Locate('名称','a',[loPartialKey]) do
      begin
        adoquery1.Edit;
        adoquery1.FindField('名称').AsString:= 'b';
        adoquery1.Post;
      end;
      

  7.   

    Delphi(Pascal) codeadoquery1.sql.text := 'select * from table where 名称=''a'''; 
    adoquery1.open; 
    adoquery1.edit; 
    while not adoquery1.eof do 
    begin 
      adoquery1.fieldbyName('名称').asstring:= 'b'; 
    end; 
    这样就行