Compartir a través de


Detección de tipos de parámetros con valores de tabla (OLE DB Driver)

Se aplica a: SQL Server Azure SQL Database Azure SQL Instancia administrada Azure Synapse Analytics Analytics Platform System (PDW)

Descargar controlador OLE DB

El consumidor, es decir, la aplicación cliente que usa el controlador OLE DB para SQL Server, puede detectar el tipo de parámetro de cada comando si se ha proporcionado el texto del comando al proveedor OLE DB. Después de conocer el tipo de un parámetro con valores de tabla, el consumidor puede detectar la información de metadatos de cada columna individual del parámetro con valores de tabla.

La información de tipo de los parámetros de procedimiento es compatible con ICommandWithParameters::GetParameterInfo en la mayoría de tipos de parámetro. A partir de SQL Server 2005 (9.x), con la introducción de los tipos definidos por el usuario y el tipo de datos xml, no bastaba con usar el método GetParameterInfo para este propósito porque no se podía proporcionar información de los tipos definidos por el usuario (nombre, esquema y catálogo) mediante ICommandWithParameters. Se definió una nueva interfaz, ISSCommandWithParameters, para proporcionar información de tipo extendido.

En el caso de los parámetros con valores de tabla, también usará la interfaz ISSCommandWithParameters para detectar información detallada. El cliente llama a ISSCommandWithParameters::GetParameterInfo después de preparar el objeto de comando. Para los parámetros con valores de tabla, el proveedor establece el miembro wType de la estructura DBPARAMINFO en DBTYPE_TABLE. El campo ulParamSize de la estructura de DBPARAMINFO tiene un valor de ~0.

El consumidor solicitará después propiedades adicionales (el nombre de catálogo del tipo de parámetro con valores de tabla, el nombre de esquema del tipo de parámetro con valores de tabla, el nombre del tipo de parámetro con valores de tabla, el orden de las columnas y las columnas predeterminadas) mediante ISSCommandWithParameters::GetParameterProperties.

Una vez conocido el nombre de tipo, para recuperar la información de cada columna individual, el consumidor debe llamar a IOpenRowset::OpenRowsetor u obtener el conjunto de filas DBSCHEMA_TABLE_TYPE_COLUMNS al especificar el nombre del tipo de parámetro con valores de tabla como el nombre de la tabla.

Consulte también

Parámetros con valores de tabla (OLE DB)
Usar parámetros con valores de tabla (OLE DB)