سؤال

I'm inserting huge amount of data to my remote MS SQL database using FireDAC's Array DML feature.

It works fine but takes time to complete execute method. While execute method running, I want to know the internal progress of FireDAC so that I can show it to the user to be patient.

How can I get the actual status of execute method?

PS: Delphi XE4 and FireDAC v8

Thanks.

هل كانت مفيدة؟

المحلول

This is rather question to DBMS API - does it provide a progress feedback or not. The nature of Array DML is that the full set of array items is sent to DBMS as a single packet. And at end of execution DBMS provides the feedback - again for the full set of array items. This reduces the number of roundtrips. A feedback in between will raise the number of roundtrips.

AFAIK, none of the API's is providing a progress feedback. So, FireDAC does not provide it too. If you need a progress feedback, then do not use Array DML and use one-by-one ExecSQL approach.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top