線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1206
推到 Plurk!
推到 Facebook!

DataSetProvider無法更新資料

尚未結案
pgdennis
資深會員


發表:41
回覆:526
積分:443
註冊:2002-05-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-07 11:40:45 IP:61.219.xxx.xxx 未訂閱
小弟之前跑delphi6徹底研究11_3的範例,裡面講3-tiers的架構,這個範例 會將clentdateset更新的資料delta傳到applaction server上的DataSetProvider,並呼叫其ApplyUpdates(),執行這一行時,會有missing data provider or data packet 錯誤,我接oracle或範例用的paradox都一樣..另外, 發生錯誤時ErrCount好像為0說,並直接跳至exception處理區段,並沒有執行if ErrCount > 0 then這段..請前輩幫忙,謝謝    
  procedure TTest113Server.ApplyUpdates(CustVar: OleVariant);
var
  ErrCount: Integer;
begin
  //Database1.StartTransaction;                // 啟動Transcation
  adoconnection1.BeginTrans;
  try
    if not VarIsNull(CustVar) then        // 判斷前端傳過來的DataSet是否有被異動
    begin                                // 如果有,則把異動部份寫入資料庫中
      CustVar := DataSetProvider1.ApplyUpdates(CustVar, 0, ErrCount);
      if ErrCount > 0 then                // 判斷資料庫寫入動作是否有錯誤
        SysUtils.Abort;                        // 如果有,則中斷
    end;
    //Database1.Commit;                        // 確認剛才的寫入動作
      adoconnection1.CommitTrans;
  except
    //Database1.Rollback                        // 恢復到寫入前的狀態
      adoconnection1.RollbackTrans;
  end;
end;
 
< >< >
------
星期一,二...無窮迴圈@@
系統時間:2024-06-28 17:31:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!