Delphi.FireDAC. Группирование команд

Данная статья посвящена группированию SQL команд в приложении. Она основана на официальной документации.

-Старая версия

-Новая версия

При группирове DBMS компилирует инструкции в единый план исполнения. Инструкции выполняются одновременно. Это минимизирует сетевой трафик и загрузку. После исполнения DBMS возвращает клиентские множества.

Управление полученными множествами

FireDAC позволяет управлять множествами одно за другим, используя метод NextRecordSet. Чтобы получить все данные сразу, необходимо включить FetchOptions.AutoClose в False до исполнения команды. Иначе сразу после достижения конца множества EoF для первого курсора, оно будет закрыто. Далее, в документации приводится такой пример для SQL сервера

Приложение может хранить каждое множество отдельно, для этого могут быть использован компонент  TFDMemTable и его свойство Data.

FireDAC автоматически пропускает пустые множества. Далее приводится таблица особенностей БД с групповой обработкой команд

16