2
我使用FireDAC的Array DML功能將大量數據插入到遠程MS SQL數據庫中。FireDAC:Array DML進度
它工作正常,但需要時間來完成執行方法。在執行方法運行時,我想知道FireDAC的內部進度,以便我可以向用戶顯示它耐心等待。
如何獲取執行方法的實際狀態?
PS:Delphi XE4和FireDAC v8
謝謝。
我使用FireDAC的Array DML功能將大量數據插入到遠程MS SQL數據庫中。FireDAC:Array DML進度
它工作正常,但需要時間來完成執行方法。在執行方法運行時,我想知道FireDAC的內部進度,以便我可以向用戶顯示它耐心等待。
如何獲取執行方法的實際狀態?
PS:Delphi XE4和FireDAC v8
謝謝。
這對DBMS API來說是一個問題 - 它是否提供進度反饋? Array DML的本質是將整組數組項目作爲單個數據包發送到DBMS。在執行結束時,DBMS提供了反饋 - 再次爲整個數組項目。這減少了往返次數。中間的反饋會增加往返次數。
AFAIK,沒有一個API提供進度反饋。所以,FireDAC也不提供它。如果您需要進度反饋,則不要使用Array DML並使用逐一的ExecSQL方法。
因此,我需要將我的所有數據分成100個例子,併爲每個數據使用小的DML數組。 – 2013-05-13 18:53:58
其他選項 - 是的,您可以。 – 2013-05-14 04:15:22