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

如何同時Update Master/Detail資料 (用ADO)

尚未結案
amy56
一般會員


發表:1
回覆:1
積分:0
註冊:2002-08-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-21 14:47:50 IP:12.4.xxx.xxx 未訂閱
各位高手: 請問"如何同時Update Master/Detail資料 (用ADO方式)"要怎麼做? 試過BEGINTRANS....不行 試過BATCHUPDATE...不行 請大家幫忙 謝謝!
James
高階會員


發表:10
回覆:290
積分:220
註冊:2002-07-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-22 10:15:36 IP:61.218.xxx.xxx 未訂閱
應該是可以啊 ,你的程式是怎麼寫的 ?還有當出什麼樣的錯誤訊息呢 ???
amy56
一般會員


發表:1
回覆:1
積分:0
註冊:2002-08-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-08-22 13:34:46 IP:12.4.xxx.xxx 未訂閱
沒有錯誤訊息,只是無法同時Update而己. 我是用二個adodataset和二個datasource去設定master/detail檔案 用一個button去指定Update 在adodataset_m的beforepost事件 ->begintrans 在button的onclick事件 -> adodataset_m.UpdateBatch -> adodataset_d.Updatebatch 在adodataset_m的afterpost事件 ->adoconnection1.CommitTrans 程式執行結果只有adodataset_m會被更新,adodataset_d則不會 請大家幫忙,Thanks!!
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-08-22 15:55:11 IP:211.20.xxx.xxx 未訂閱
建議改成以下寫法試試看看 在buon的onclick寫 暫時將MASTER/DETIL的關聯關閉 adoconnection1.begintrans adodataset_m.UpdateBatch adodataset_d.Updatebatch adoconnection1.CommitTrans 暫時將MASTER/DETIL的關聯打開 在adodataset_m的beforepost事件拿掉 在adodataset_m的afterpost事件拿掉 @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
richcomp
中階會員


發表:18
回覆:66
積分:51
註冊:2002-10-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-10-25 09:14:55 IP:61.177.xxx.xxx 未訂閱
涴跺恀枙腔壽瑩婓斛剕珂蔚detail載陔(updatebatch),婬蔚master載陔ㄛ扂衄湮講妏蚚ㄛ諫隅羶恀枙
frankiech
中階會員


發表:7
回覆:78
積分:52
註冊:2002-08-29

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-10-26 08:56:25 IP:218.32.xxx.xxx 未訂閱
我最近也碰到這個問題,但是我是用2個TAdoQuery,後來我將Detail的Table改用 TADOTable Component 就可以同時Update了. 發表人 - frankiech 於 2002/10/26 08:58:08 發表人 - frankiech 於 2002/10/26 08:58:54
shpeng
初階會員


發表:6
回覆:67
積分:49
註冊:2002-12-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-12-25 14:08:03 IP:211.72.xxx.xxx 未訂閱
var        FilteredState:Boolean;
        TempFilterGroup:TFilterGroup;TempFilter:String;    with adodataset_m do
begin
        TempFilter := Filter;
        Filter := '';         
        FilteredState := Filtered;
        TempFilterGroup := FilterGroup;
        Filtered := True;
        FilterGroup := fgPendingRecords;
        UpdateBatch;
        Filtered := FilteredState;
        FilterGroup := TempFilterGroup;
        Filter := TempFilter;
end;    with adodataset_d do
begin
        TempFilter := Filter;
        Filter := '';  //<----重點於此 Master-Detail 有用Filter過濾
        FilteredState := Filtered;
        TempFilterGroup := FilterGroup;
        Filtered := True;
        FilterGroup := fgPendingRecords;
        UpdateBatch;
        Filtered := FilteredState;
        FilterGroup := TempFilterGroup;
        Filter := TempFilter;
end;
一定沒問題,但不支援 SQL MTable-DTable with [Foreign Key]
------
==取之於斯,用之於斯==
系統時間:2024-05-15 2:09:05
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!