2009-01-26 59 views

回答

11

這裏真的有兩個問題:我可以添加一個額外的TField,並且可以添加額外的數據字段。

克隆客戶端數據集遊標時,最終會生成兩個TDataSet實例,每個實例都有自己的TField集合,它們共享一個數據存儲區。您當然可以將其他TFields添加到計算字段等其他字段中,而不會影響克隆。這樣做沒有問題。

但請記住,原始數據集及其克隆共享單個數據存儲。您不能更改該數據存儲而不影響其他數據集。如果向數據存儲添加新字段,則無論您是否創建了任何TField對象來讀取/寫入數據,該新數據都將出現在原始數據集引用的存儲中。如果這聽起來像是一個壞主意,那麼,我也在這麼想。

最後,如果您希望原始數據集及其「克隆」具有不同的數據存儲,則可以分配Data屬性而不是使用CloneCursor。當您這樣做時,原始數據將被複制到「克隆」的數據存儲中,但原始數據和「克隆」不再共享單個數據存儲。