sp_datatype_info (Transact-SQL)
Devuelve información acerca de los tipos de datos que admite el entorno actual.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_datatype_info [ [ @data_type = ] data_type ]
[ , [ @ODBCVer = ] odbc_version ]
Argumentos
- [ @data_type= ] data_type
Es el número de código del tipo de datos especificado. Para obtener una lista de todos los tipos de datos, omita este parámetro. data_type es de tipo int y su valor predeterminado es 0.
- [ @ODBCVer= ] odbc_version
Es la versión de ODBC utilizada. odbc_version es de tipo tinyint y su valor predeterminado es 2.
Conjuntos de resultados
Nombre de columna | Tipo de datos | Descripción |
---|---|---|
TYPE_NAME |
sysname |
Tipo de datos dependiente del DBMS. |
DATA_TYPE |
smallint |
Código para el tipo de ODBC al que se asignan todas las columnas de este tipo. |
PRECISION |
int |
Precisión máxima del tipo de datos en el origen de datos. Se devuelve NULL para los tipos de datos a los que no se puede aplicar un parámetro de precisión. El valor devuelto para la columna PRECISION está expresado en base 10. |
LITERAL_PREFIX |
varchar(32) |
Carácter o caracteres utilizados antes de una constante. Por ejemplo, una comilla simple (') para tipos de carácter y 0x para tipos binarios en SQL Server 2005. |
LITERAL_SUFFIX |
varchar(32) |
Carácter o caracteres utilizados para terminar una constante. Por ejemplo, una comilla simple (') para tipos de carácter y sin comillas para tipos binarios. |
CREATE_PARAMS |
varchar(32) |
Descripción de los parámetros de creación para este tipo de datos. Por ejemplo, decimal es "precision, scale", float es NULL y varchar es "max_length". |
NULLABLE |
smallint |
Especifica la capacidad de aceptar valores NULL. 1 = Permite valores NULL. 0 = No permite valores NULL. |
CASE_SENSITIVE |
smallint |
Especifica si debe distinguirse entre mayúsculas y minúsculas. 1 = Todas las columnas de este tipo distinguen entre mayúsculas y minúsculas (para intercalados). 0 = Las columnas de este tipo no distinguen entre mayúsculas y minúsculas. |
SEARCHABLE |
smallint |
Tipo de columna. 1 = Las columnas de este tipo se pueden utilizar en una cláusula WHERE. 0 = Las columnas de este tipo no se pueden utilizar en una cláusula WHERE. |
UNSIGNED_ATTRIBUTE |
smallint |
Especifica el signo del tipo de datos. 1 = Tipo de datos sin signo. 0 = Tipo de datos con signo. |
MONEY |
smallint |
Especifica el tipo de datos money. 1 = Tipo de datos money. 0 = No es un tipo de datos money. |
AUTO_INCREMENT |
smallint |
Especifica el incremento automático. 1 = Incremento automático. 0 = Sin incremento automático. NULL = Atributo no aplicable. Una aplicación puede insertar valores en una columna que tenga este atributo, pero la aplicación no puede actualizar los valores de la columna. Excepto el tipo de datos bit, AUTO_INCREMENT sólo es válido para los tipos de datos que pertenecen a las categorías de tipos de datos Numérico exacto o Numérico aproximado. |
LOCAL_TYPE_NAME |
sysname |
Versión traducida del nombre del tipo de datos, dependiente del origen de datos. Por ejemplo, DECIMAL es DECIMALE en francés. Se devuelve NULL si el origen de datos no es compatible con un nombre traducido. |
MINIMUM_SCALE |
smallint |
Escala mínima del tipo de datos en el origen de datos. Si un tipo de datos tiene una escala fija, las columnas MINIMUM_SCALE y MAXIMUM_SCALE contienen este valor. Se devuelve NULL cuando no se puede aplicar la escala. |
MAXIMUM_SCALE |
smallint |
Escala máxima del tipo de datos en el origen de datos. Si la escala máxima no está definida por separado en el origen de datos, sino que se define igual que la precisión máxima, esta columna contendrá el mismo valor que la columna PRECISION. |
SQL_DATA_TYPE |
smallint |
Valor del tipo de datos SQL tal como aparece en el campo TYPE del descriptor. Esta columna es igual que la columna DATA_TYPE, salvo por los tipos de datos datetime e interval ANSI. Este campo siempre devuelve un valor. |
SQL_DATETIME_SUB |
smallint |
datetime o el subcódigo interval ANSI si el valor de SQL_DATA_TYPE es SQL_DATETIME o SQL_INTERVAL. Para tipos de datos distintos de datetime e interval ANSI, este campo es NULL. |
NUM_PREC_RADIX |
int |
Número de bits o dígitos para calcular el número máximo que puede tener una columna. Si el tipo de datos es numérico aproximado, esta columna contendrá el valor 2 para indicar varios bits. Para tipos numéricos exactos, esta columna contiene el valor 10 que indica varias cifras decimales. De lo contrario, esta columna es NULL. Mediante la combinación de la precisión con la base, la aplicación puede calcular el número máximo que puede tener la columna. |
INTERVAL_PRECISION |
smallint |
Valor de la precisión del principio del intervalo si data_type es de tipo interval; de lo contrario, es NULL. |
USERTYPE |
smallint |
Valor de usertype en la tabla systypes. |
Notas
sp_datatype_info es equivalente a SQLGetTypeInfo en ODBC. Los resultados devueltos se ordenan por DATA_TYPE y, a continuación, por la proximidad de la asignación de los tipos de datos a los tipos de datos de ODBC SQL correspondientes.
Permisos
Debe pertenecer a la función public.
Valores de código de retorno
Ninguno
Ejemplos
En el siguiente ejemplo se recupera información para los tipos de datos sysname y nvarchar al especificar el valor -9
en data_type .
USE master;
GO
EXEC sp_datatype_info -9;
GO
Vea también
Referencia
Procedimientos almacenados del motor de base de datos (Transact-SQL)
Tipos de datos (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)