SQLSetDescRec
En este tema se trata la funcionalidad de SQLSetDescRec que es específica de SQL Server Native Client.
SQLSetDescRec y parámetros con valores de tabla
SQLSetDescRec se puede usar para establecer campos descriptor de parámetros con valores de tabla y columnas de parámetro con valores de tabla. Las columnas de parámetro con valores de tabla únicamente están disponibles cuando el campo de encabezado del descriptor SQL_SOPT_SS_PARAM_FOCUS está establecido en el ordinal de un registro con SQL_DESC_TYPE establecido en SQL_SS_TABLE. Para obtener más información acerca de SQL_SOPT_SS_PARAM_FOCUS, vea SQLSetStmtAttr.
En la tabla siguiente se describe la asignación entre parámetros y campos descriptor.
Parámetros |
Atributo relacionado para tipos de parámetro con valores que no son de tabla, incluidas columnas de parámetro con valores de tabla |
Atributo relacionado para parámetros con valores de tabla |
---|---|---|
Type |
SQL_DESC_TYPE |
SQL_SS_TABLE |
SubType |
No se tiene en cuenta |
Para registros de tipo SQL_DATETIME o SQL_INTERVAL, establézcalo en SQL_DESC_DATETIME_INTERVAL_CODE. |
Length |
SQL_DESC_OCTET_LENGTH |
Longitud del nombre de tipo de parámetro con valores de tabla. Puede ser SQL_NTS si el nombre de tipo termina en NULL, o cero si no se requiere el nombre de tipo de parámetro con valores de tabla. |
Precision |
SQL_DESC_PRECISION |
SQL_DESC_ARRAY_SIZE |
Scale |
SQL_DESC_SCALE |
No se usa. Este parámetro debería ser cero. |
DataPtr |
SQL_DESC_DATA_PTR en APD |
SQL_CA_SS_TYPE_NAME Este parámetro es opcional para las llamadas a procedimientos almacenados y puede especificarse NULL si no se requiere. Este parámetro se debe especificar en instrucciones SQL que no son llamadas a procedimientos. DataPtr también actúa como un valor único que la aplicación puede usar para identificar este parámetro con valores de tabla cuando se usa el enlace de filas variable. |
StringLengthPtr |
SQL_DESC_OCTET_LENGTH_PTR |
SQL_DESC_OCTET_LENGTH_PTR Para un parámetro con valores de tabla, éste es el número de filas que se van a transferir o SQL_DATA_AT_EXEC. Éste es un puntero a un valor que contiene el número de filas que se van a transferir con SQLExecDirect. |
IndicatorPtr |
SQL_DESC_INDICATOR_PTR |
SQL_DESC_INDICATOR_PTR |
Para obtener más información acerca de los parámetros con valores de tabla, vea Parámetros con valores de tabla (ODBC).
SQLSetDescRec admite las características mejoradas de fecha y hora
Los valores permitidos para los tipos de fecha y hora son los siguientes:
Type |
SubType |
Length |
Precision |
Scale |
|
---|---|---|---|---|---|
datetime |
SQL_DATETIME |
SQL_CODE_TIMESTAMP |
4 |
3 |
3 |
smalldatetime |
SQL_SQL_DATETIME |
SQL_CODE_TIMESTAMP |
8 |
0 |
0 |
date |
SQL_DATETIME |
SQL_CODE_DATE |
6 |
0 |
0 |
time |
SQL_SS_TIME2 |
0 |
10 |
0..7 |
0..7 |
datetime2 |
SQL_DATETIME |
SQL_CODE_TIMESTAMP |
16 |
0..7 |
0..7 |
datetimeoffset |
SQL_SS_TIMESTAMPOFFSET |
0 |
20 |
0..7 |
0..7 |
Para obtener más información, vea Mejoras en los tipos de datos de fecha y hora (ODBC).
SQLSetDescRec admite UDT CLR grandes
SQLSetDescRec admite tipos definidos por el usuario (UDT) CLR grandes. Para obtener más información, vea Tipos CLR grandes definidos por el usuario (ODBC).