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 = ] 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 int, con un valor predeterminado de 0.

[ @ODBCVer = ] odbc_version Es la versión de ODBC que se usa. odbc_version es tinyint, con un valor predeterminado de 2.

Valores de código de retorno

None

Conjuntos 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. 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 los tipos de caracteres y 0x para binary.
LITERAL_SUFFIX varchar(32) Carácter o caracteres usados para finalizar 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 "precisión, escala", 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 y minúsculas (para intercalaciones).

0 = Las columnas de este tipo no distinguen mayúsculas y 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 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 no puede actualizar los valores de la columna. Con la excepción del 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 es DECIMALE en francés. Se devuelve NULL si el origen de datos no admite 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 la misma que la columna DATA_TYPE, excepto los tipos de datos datetime y ANSI interval . Este campo siempre devuelve un valor.
SQL_DATETIME_SUB smallint subcódigo de intervalodatetime o ANSI si el valor de SQL_DATA_TYPE es SQL_DATETIME o SQL_INTERVAL. Para 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 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 inicial del intervalo si data_type es interval; en caso contrario, NULL.
USERTYPE smallint valor usertype de la tabla systypes.

Comentarios

sp_datatype_info equivale 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 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  

Consulte también

Procedimientos almacenados del motor de base de datos (Transact-SQL)
Tipos de datos (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)