打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Adoquery按保存(Adoquery1.updatebatch())的时候出错. - ...

Adoquery按保存(Adoquery1.updatebatch())的时候出错.

Adoquery按保存(Adoquery1.updatebatch())的时候出错.怎么判断当前是否编辑状态?

2005-07-20

Delphi / 数据库相关

procedure   Tfrmorder.BitBtn4Click(Sender:   TObject);   //保存数据
  begin

      adoquery1.FieldByName('状态').Value:='未完成';
    if   (adoquery1.state<>dsEdit)or(adoquery1.state<>dsInsert)   then     //一按保存,这里出错
      adoquery1.UpdateBatch();
  end;

  以下是出错的信息:
  ---------------------------
  Debugger   Exception   Notification
  ---------------------------
  Project   Project.exe   raised   exception   class   EDatabaseError   with   message   'ADOQuery1:   Dataset   not   in   edit   or   insert   mode'.   Process   stopped.   Use   Step   or   Run   to   continue.
  ---------------------------
  OK       Help
  ---------------------------

Top

adoquery1.State=

Top

procedure   Tfrmorder.BitBtn4Click(Sender:   TObject);   //保存数据
  begin

      adoquery1.FieldByName('状态').Value:='未完成';
    if   (adoquery1.state=dsEdit)or(adoquery1.state=dsInsert)   then     //一按保存,这里出错
      adoquery1.UpdateBatch();
  end;

  一样出错
Top

ADOQuery1.State
      TDataSetState   =   (dsInactive,   dsBrowse,   dsEdit,   dsInsert,   dsSetKey,
          dsCalcFields,   dsFilter,   dsNewValue,   dsOldValue,   dsCurValue,   dsBlockRead,
          dsInternalCalc,   dsOpening);

Top

先adoquery1.edit;
  试试!
Top

procedure   Tfrmorder.BitBtn4Click(Sender:   TObject);   //保存数据
  begin

    if   (adoquery1.state=dsEdit)or(adoquery1.state=dsInsert)   then
      begin
      adoquery1.FieldByName('状态').Value:='未完成';
      adoquery1.UpdateBatch();
      end;
  end;

  这样就没错了,谢谢各位
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
FireDac中Fdquery能否像Adoquery一样进行UpdateBatch操作?
Delphi中在ComboBox中添加数据库中字段
delphi中的dbgrid 数据操作
历史上最全的delphi技巧集锦之一 - 惊落梧桐的日志 - 网易博客
小型超市管理系统
delphi数据集
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服