adoquery4.EDIT;
 with adoquery4.sql do begin
  Clear;
  Add('updata yhzl');
  Add('set 用户号='+''''+updata_yhh.text+'''');
  Add('where 用户号='+''''+yhh_updata_select.text+'''');showmessage('ok');
adoquery4.Post;
我编辑的修改按钮出错
我改了n久还是不知道怎么搞的
大虾们帮我看看,
系统提示
adoquery4:cannot perform this operation on a closed dataset.
我的adoquery4明明连好了的 ,怎么保存不了呢?
好象是保存那里有错,但是菜鸟小弟我怎么都不明白了,求各位大虾们帮帮忙了

解决方案 »

  1.   

    "a closed database",说明是数据库的问题,看看是不是数据库没有连接好,或者SQlServer没有打开.
      

  2.   

    不要用post,应该用adoquery4.ExecSQL;
      

  3.   

    数据库没有问题,呵呵
    试试adoquery4.ExecSQL;
      

  4.   

    晕了
    把adoquery4.Post;改成了adoquery4.ExecSQL;
    还是不行
    还是同样的提示。数据库我是肯定开了,而且运行前我还专门刷新了一下。今天被郁闷了
      

  5.   

    adoquery4.EDIT;把这一句去掉,数据集没有打开怎么能用edit,执行ExecSQL,要edit]有什么用
      

  6.   

    5555555......今天看来是注定被郁闷的日子。
    新的问题出现了,我加100分。
     系统出现     [odbc sql server driver][sql server]第2行:'.'附近有语法错误。菜鸟我怎么找都找不出来。。哎~~~~~需要好好看看sql基础了。全部代码如下://adoquery4.open;
    //adoquery4.EDIT;
      with adoquery4.SQL do begin
      Clear;
      Add('updata yhzl');
      Add('set 用户号=updata_yhh.Text');
      //Add('set 用户号='+''''+updata_yhh.Text+'''');//无论我是用哪一行都是出现这个错误
      Add('where 用户号=yhh_updata_select.text');
      //Add('where 用户号='+''''+yhh_updata_select.text+'''');adoquery4.ExecSQL;用户基本资料表====yhzl
    (用户号,用户姓名,用电地址,业务员,客户联系人,档案存放地址)
    其中 用户号 为关键字。//难道是只改关键字不能改????
      

  7.   

    汗可能今天周末晚上大家都出去玩了。像我这样的可能比较少。HOHO~~~~~
    哎~~~~~~~~~~~~~~~~自己顶一下
      

  8.   

    Add('updata yhzl ');
     Add('set 用户号='''+updata_yhh.Text+'''');
      

  9.   

    with adoquery4.SQL do
     begin
      Clear;
      Add('updata yhzl set 用户号='''+updata_yhh.Text+''' where 用户号='''+yhh_updata_select.text+'''');
    adoquery4.ExecSQL;
    这样可以了
      

  10.   

    回复: duandao(断刀) 
     with adoquery4.SQL do begin
      Clear;
      Add('updata yhzl ');
      Add('set 用户号='''+updata_yhh.Text+''' ');
      Add('where 用户号='''+yhh_updata_select.text+'''');
     end; 回复: drift1981(一包香烟,一把吉他,浪迹天涯!)
    with adoquery4.SQL do
     begin
      Clear;
      Add('updata yhzl set 用户号='''+updata_yhh.Text+''' where 用户号='''+yhh_updata_select.text+'''');
     end;
    adoquery4.ExecSQL;5555555555555555555~~~~~还是不对呀,这回系统提示是
    [odbc sql server driver][sql server]第2行:'='附近有语法错误!!我晕死了。