Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Относится к:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Система аналитической платформы (PDW)
SQL база данных в Microsoft Fabric
Потребитель (клиентское приложение, использующее драйвер OLE DB для SQL Server) может определить тип каждого параметра команды, если текст команды передается поставщику OLE DB. После того как тип возвращающего табличное значение параметра становится известен, потребитель может определить метаданные для каждого отдельного столбца возвращающего табличное значение параметра.
Сведения о типе параметров процедур предоставляются методом ICommandWithParameters::GetParameterInfo для большинства типов параметров. Начиная с SQL Server 2005 (9.x), с введением определяемых пользователем типов и xml-типа данных метод GetParameterInfo был недостаточно для этой цели, так как не удалось предоставить определяемые пользователем сведения о типе (имя, схема и каталог) через ICommandWithParameters. Для предоставления расширенных сведений о типе был определен новый интерфейс ISSCommandWithParameters.
Среди прочего, интерфейс ISSCommandWithParameters позволяет получать подробные сведения для возвращающих табличное значение параметров. Клиент вызывает ISSCommandWithParameters::GetParameterInfo после подготовки объекта команды. Для возвращающих табличные значения параметров элемент wType структуры DBPARAMINFO устанавливается поставщиком в значение DBTYPE_TABLE. Поле ulParamSize структуры DBPARAMINFO имеет значение ~0.
Объект-получатель затем запрашивает дополнительные свойства (имя каталога для типа табличного параметра, имя схемы для типа табличного параметра, имя типа табличного параметра, порядок столбцов и столбцы по умолчанию) с помощью ISSCommandWithParameters::GetParameterProperties.
После того как имя типа стало известно, для получения сведений об отдельном столбце потребитель должен либо вызвать метод IOpenRowset::OpenRowset, либо получить набор строк DBSCHEMA_TABLE_TYPE_COLUMNS, указав имя типа возвращающего табличное значение параметра в качестве имени таблицы.
См. также
Возвращающие табличные значения параметры (OLE DB)
Использование возвращающих табличные значения параметров (OLE DB)