Поделиться через


Команды, формирующие результаты с несколькими наборами строк

Поставщик OLE DB для собственного клиента SQL Server может возвратить несколько наборов строк из инструкций SQL Server. Инструкции SQL Server возвращают результаты, содержащие несколько наборов строк, при следующих условиях.

  • Пакетные инструкции SQL представляются как единая команда.

  • Хранимые процедуры реализуют пакет инструкций SQL.

  • Инструкции SQL включают предложение Transact-SQL COMPUTE или COMPUTE BY.

Пакеты

Поставщик OLE DB для собственного клиента SQL Server распознает символ «точка с запятой» как разделитель пакета для инструкций SQL:

WCHAR*       wSQLString = L"SELECT * FROM Categories; "
                          L"SELECT * FROM Products";

Отправка нескольких инструкций SQL в одном пакете более эффективна, чем выполнение каждой инструкции SQL по отдельности. Отправка одного пакета уменьшает количество циклов приема-передачи данных с клиента на сервер.

Хранимые процедуры

SQL Server возвращает результирующий набор для каждой инструкции в хранимой процедуре, поэтому большинство хранимых процедур SQL Server возвращает несколько результирующих наборов.

COMPUTE и COMPUTE BY

Предложение Transact-SQL COMPUTE BY формирует подытоги в результирующем наборе инструкции SELECT. Предложение COMPUTE формирует итоги в конце результирующего набора. Поставщик OLE DB для собственного клиента SQL Server возвращает каждый подытог COMPUTE BY и итог COMPUTE как отдельный результирующий набор строк.

См. также

Основные понятия