DELPHI CLIENTDATASET 不能修改刪除問題

窗口從基本功能窗口繼承,今天 做的窗口能新增數據,但不能修改、刪除數據 。提示:Record not found or changed by another user 以下是從網絡找到的問答: 1.你的程序中有两个连接,或有两个数据集同时联接到数据库,而其中一个数据集中的变化没有同步到另一个数据集中去。可以使用Requery使之同步。[@more@]

2.是由于Clientdataset与Provider不同步引用的重新获取Clientdataset一下就行了. 3.不是Delphi的BUG,是你的问题。极有可能是你提交的Update的SQL语句的Where子句中包含有诸如浮点、日期等类型。这样导致数据库无法定位到准确的记录,所以报错。

谢谢QQ群里阿规帮忙解决。

服务器端:ADOQUERY的表主健字段属性 ProviderFlags.pflnUpdate=true,

ProviderFlags.pflnWhere=true,

ProvderFlags.pflnKey=true.

2010-11-10

實例子:

procedure TfrmLCDSProgress.FormCreate(Sender: TObject);
begin
ischecked:='chk'; //確認狀況字段
checkuser:='chkuser'; //確認者字段
checktime:='chkdate'; //確認時間

Master_dataset := DMEng_C.CDSLCDSProgress;
qry_key :='fID'; // 不能刪除數據主要原因:此處的主鍵 與表中主鍵設定不一致。 表中主鍵為 FID,此處原來 QRY_KEY:=FNO.因此不能刪除數據。雖然在DBGRID中已經刪除,但數據表中沒有刪除 。現在 修改QRY_KEY:=FID後,數制表中也刪除了所刪除的數據。
qry_sel :='tLCDsProgress';

if not Master_dataset.Active then
begin
Master_dataset.Active := True;
end;
inherited;
querysortfield:=' fdcdate desc,fgzdate desc,ftxsjdate desc,fggzdDate desc,freceiptDate desc ';

SetItem(DBComboBox5,'PD',QRY_sel); // PD負責人
SetItem(DBComboBox7,'SALE',QRY_sel); // 業務負責人
end;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/729024/viewspace-1041221/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/729024/viewspace-1041221/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值