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/