query 的autorefesh有没有设为true

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    with dm.ADOQuery1 do begin
                 with SQL do begin
                close;
                Clear;
                Add('insert into 用户表(姓名) values('''+edit1.text+''')');
                ExecSql;//往上放
                end;
                 //execsql; 太下边了,提一下就可以了
               end;
    end;
      

  2.   

    不可以,
    dbgrid自己不知道刷新。,但是我加了
    active:=true;

    open;都不行。
      

  3.   

    错误提示:commandtext does not return a result set
    这段前后还有点,我就不抄了。
    谢谢大家了
      

  4.   

    不是啊,你看啊,小小上边是说你的execsql应该是对应query.execsql;
    可是,你是在end的外边放着啊,根本就没有返回结果;
    还有就是,你这是Insert语句,所以,你的open or active :=true是不起作用的;
      

  5.   

    ADOQuery1你做了 insert  execsql操作 不返回数据集 应Open一下才返回数据集
      

  6.   

    实在不行,你在增加完之后,再来一条
    query1.close;
    query1.sql.clear;
    query1.sql.add(select * from table)
    query1.open;
      

  7.   

    用Append和Post就可以了,不然每次都刷新。
      

  8.   

    先CLOSE
    再OPEN
    就可以刷新了
      

  9.   

    query1.close;
    query1.sql.clear;
    query1.sql.add(select * from table)
    query1.open;把这个写在form.activate事件里
    每次都会刷新的
      

  10.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    with dm.ADOQuery1 do begin
                 with SQL do begin
                close;
                Clear;
                Add('insert into 用户表(姓名) values('''+edit1.text+''')');
                ExecSql
                close;
                open;
                end;
               end;
    end;
      

  11.   

    谢谢几位
    CLOSE
    OPEN是不行的,TO taxi(游少爷):APPEND
                    ……
                    POST
    怎么用?
      

  12.   

    就是
    Query1.Append;
    Query1.FieldByName('字段名').As数据类型:=值;
    Query1.Post;