Наборы строк

Набор строк — это несколько строк, содержащих столбцы данных. Наборы строк — это основные объекты, позволяющие всем поставщикам данных OLE DB представлять данные результирующих наборов в виде таблиц.

После создания сеанса с помощью метода IDBCreateSession::CreateSession, потребитель может использовать интерфейс IOpenRowset или IDBCreateCommand этого сеанса для создания набора строк. Поставщик OLE DB для собственного клиента SQL Server поддерживает оба интерфейса. Оба эти метода описаны здесь.

  • Создайте набор строк, вызвав метод IOpenRowset::OpenRowset.

    Это эквивалентно созданию набора строк из одной таблицы. Этот метод открывает и возвращает набор строк, включающий все строки одной базовой таблицы. Одним из аргументов метода OpenRowset является идентификатор таблицы, указывающий таблицу, на основе которой создается набор строк.

  • Создайте объект команд с помощью метода IDBCreateCommand::CreateCommand.

    Объект команд выполняет команды, поддерживаемые поставщиком. С помощью поставщика OLE DB для собственного клиента SQL Server потребитель может указать любую инструкцию Transact-SQL, например SELECT, или вызов хранимой процедуры. Создание набора строк с помощью объекта команд включает следующие шаги.

    1. Потребитель вызывает метод IDBCreateCommand::CreateCommand для сеанса, чтобы получить объект команд, запрашивающий интерфейс ICommandText для объекта команд. Этот интерфейс ICommandText задает и получает действительный текст команды. Потребитель заполняет текст команды путем вызова метода ICommandText::SetCommandText.

    2. Потребитель вызывает метод ICommand::Execute для команды. Объект набора строк, создаваемый во время выполнения команды, содержит результирующий набор этой команды.

Потребитель может использовать интерфейс ICommandProperties для получения или задания свойств набора строк, возвращаемого командой, которая выполняется интерфейсом ICommand::Execute. Наиболее часто запрашиваемыми свойствами являются интерфейсы, которые должны поддерживаться набором строк. Кроме интерфейсов, потребитель может запросить свойства, изменяющие поведение набора строк или интерфейса.

Потребители освобождают наборы строк с помощью метода IRowset::Release. При освобождении набора строк освобождаются все дескрипторы строк, удерживаемые потребителем для данного набора строк. При освобождении набора строк методы доступа не освобождаются. Если используется интерфейс IAccessor, его нужно освободить отдельно.

См. также

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