sp_datatype_info (Transact-SQL)
Se aplica a: SQL Server Azure Synapse Analytics
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 = ] ODBCVer ]
[ ; ]
Argumentos
[ @data_type = ] data_type
Número de código del tipo de datos especificado. @data_type es int, con un valor predeterminado de 0
. Para obtener una lista de todos los tipos de datos, omita este parámetro.
[ @ODBCVer = ] ODBCVer
Versión de ODBC que se usa. @ODBCVer es tinyint, con un valor predeterminado de 2
.
Valores de código de retorno
Ninguno.
Conjunto de resultados
Nombre de la 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. NULL se devuelve para los tipos de datos para los que la precisión no es aplicable. El valor devuelto de la PRECISION columna está en la base 10. |
LITERAL_PREFIX |
varchar(32) | Carácter o caracteres utilizados antes de una constante. Por ejemplo, una comilla simple (' ) para los tipos de caracteres y 0x para binary. |
LITERAL_SUFFIX |
varchar(32) | Carácter o caracteres utilizados para terminar una constante. Por ejemplo, una comilla simple (' ) para los tipos de caracteres y sin comillas para 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 nulabilidad.1 = Permite valores NULL.0 = No permite valores NULL. |
CASE_SENSITIVE |
smallint | Especifica si deben distinguirse mayúsculas y minúsculas.1 = Todas las columnas de este tipo distinguen mayúsculas de minúsculas (para intercalaciones).0 = Todas las columnas de este tipo no distinguen mayúsculas de minúsculas. |
SEARCHABLE |
smallint | Especifica la capacidad de búsqueda del tipo de columna:1 = No se puede buscar.2 = Se puede buscar con LIKE.3 = Se puede buscar con WHERE .4 = se puede buscar con WHERE o LIKE . |
UNSIGNED_ATTRIBUTE |
smallint | Especifica el signo del tipo de datos.1 = Tipo de datos sin firmar.0 = Tipo de datos firmado. |
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 = Creación automática.0 = No creación automática.NULL = Atributo no aplicable. Una aplicación puede insertar valores en una columna que sea este atributo, pero la aplicación no puede actualizar los valores de la columna. Excepto para el tipo de datos bit , AUTO_INCREMENT solo es válido para los tipos de datos que pertenecen a las categorías de tipo de datos Numérico exacto y Numérico aproximado. |
LOCAL_TYPE_NAME |
sysname | Versión traducida del nombre del tipo de datos, dependiente del origen de datos. Por ejemplo, DECIMAL está DECIMALE en francés. NULL se devuelve si el origen de datos no admite un nombre localizado. |
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 MINIMUM_SCALE columnas y MAXIMUM_SCALE contienen este valor. NULL se devuelve donde la escala no es aplicable. |
MAXIMUM_SCALE |
smallint | Escala máxima del tipo de datos en el origen de datos. Si la escala máxima no se define por separado en el origen de datos, pero se define para que sea la misma precisión que la máxima, esta columna contiene el mismo valor que la PRECISION columna. |
SQL_DATA_TYPE |
smallint | Valor del tipo de datos SQL tal como aparece en el TYPE campo del descriptor. Esta columna es la misma que la DATA_TYPE columna, excepto para los tipos de datos datetime y ANSI interval . Este campo siempre devuelve un valor. |
SQL_DATETIME_SUB |
smallint | subcódigo de intervalo datetime o ANSI si el valor de SQL_DATA_TYPE es SQL_DATETIME o SQL_INTERVAL . En el caso de los tipos de datos distintos de datetime e intervalo 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 los tipos numéricos exactos, esta columna contiene el valor 10 para indicar varios dígitos 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 inicial del intervalo si @data_type es interval; en caso contrario NULL , . |
USERTYPE |
smallint | valor usertype de la systypes tabla. |
Comentarios
sp_datatype_info
es equivalente a SQLGetTypeInfo
en ODBC. Los resultados devueltos se ordenan por DATA_TYPE
y, a continuación, el tipo de datos se asigna de cerca al tipo de datos ODBC SQL correspondiente.
Permisos
Debe pertenecer al rol public .
Ejemplos
En el ejemplo siguiente se recupera información de los tipos de datos sysname y nvarchar especificando el valor de @data_type de -9
.
USE master;
GO
EXEC sp_datatype_info -9;
GO