sp_datatype_info (Transact-SQL)

Retourne des informations sur les types de données pris en charge par l'environnement actuel.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

sp_datatype_info [ [ @data_type = ] data_type ] 
     [ , [ @ODBCVer = ] odbc_version ] 

Arguments

  • [ @data_type= ] data_type
    Numéro de code du type de données spécifié. Pour obtenir une liste de tous les types de données, omettez ce paramètre. data_type est int, avec la valeur par défaut 0.
  • [ @ODBCVer= ] odbc_version
    Version d'ODBC utilisée. odbc_version est du type tinyint, avec 2 comme valeur par défaut.

Jeux de résultats

Nom de colonne Type de données Description

TYPE_NAME

sysname

Type de données dépendant du SGDB

DATA_TYPE

smallint

Code pour le type ODBC sur lequel toutes les colonnes de ce type sont mappées.

PRECISION

int

Précision maximale du type de données de la source de données. La valeur NULL est retournée pour les types de données pour lesquels la précision n'est pas applicable. La valeur retournée pour la colonne PRECISION est en base 10.

LITERAL_PREFIX

varchar(32)

Caractère(s) utilisé(s) devant une constante. Par exemple, un guillemet simple (') pour les types caractère et 0x pour les types binaires dans SQL Server 2005.

LITERAL_SUFFIX

varchar(32)

Caractère(s) utilisé(s) pour terminer une constante. Par exemple, un guillemet simple (') pour les types caractère et pas de guillemets pour les types binaires.

CREATE_PARAMS

varchar(32)

Description des paramètres de création de ce type de données. Par exemple, decimal correspond à « precision, scale », float correspond à la valeur NULL et varchar correspond à « max_length ».

NULLABLE

smallint

Précise la possibilité de valeur nulle.

1 = Autorise les valeurs NULL

0 = N'autorise pas les valeurs NULL

CASE_SENSITIVE

smallint

Spécifie le respect de la casse.

1 = Toutes les colonnes de ce type respectent la casse (pour les classements).

0 = Toutes les colonnes de ce type ne respectent pas la casse.

SEARCHABLE

smallint

Type de colonne.

1 = Les colonnes de ce type peuvent être utilisées dans une clause WHERE.

0 = Les colonnes de ce type ne peuvent pas être utilisées dans une clause WHERE.

UNSIGNED_ATTRIBUTE

smallint

Spécifie la signature du type de données.

1 = Types de données non signées

0 = Type de données signées

MONEY

smallint

Spécifie le type de données money.

1 = Type de données money

0 = Type de données différent de money

AUTO_INCREMENT

smallint

Spécifie l'auto-incrémentation.

1 = Auto-incrémentation

0 = Pas d'auto-incrémentation

NULL = Attribut non applicable

Une application peut insérer des valeurs dans une colonne possédant cet attribut, mais elle ne peut pas mettre à jour les valeurs dans la colonne. À l'exception du type de données bit, AUTO_INCREMENT est valide uniquement pour les types de données qui appartiennent aux catégories de types de données Valeurs numériques exactes et Valeurs numériques approximatives.

LOCAL_TYPE_NAME

sysname

Version localisée du nom de type de données dépendant de la source de données. Par exemple, DECIMAL est DECIMALE en français. La valeur NULL est retournée si un nom localisé n'est pas pris en charge par la source de données.

MINIMUM_SCALE

smallint

Échelle minimale du type de données de la source de données. Si un type de données possède une échelle fixe, les colonnes MINIMUM_SCALE et MAXIMUM_SCALE contiennent toutes deux cette valeur. La valeur NULL est retournée lorsque l'échelle n'est pas applicable.

MAXIMUM_SCALE

smallint

Échelle maximale du type de données de la source de données. Si l'échelle maximale n'est pas définie séparément dans la source de données, mais au contraire définie comme étant identique à la précision maximale, cette colonne contient la même valeur que la colonne PRECISION.

SQL_DATA_TYPE

smallint

Valeur du type de données SQL telle qu'elle apparaît dans le champ TYPE du descripteur. Cette colonne est la même que la colonne DATA_TYPE, excepté pour les types de données datetime et interval ANSI. Ce champ retourne toujours une valeur.

SQL_DATETIME_SUB

smallint

datetime ou sous-code interval ANSI si la valeur de SQL_DATA_TYPE est SQL_DATETIME ou SQL_INTERVAL. Pour les types de données autres que datetime et interval ANSI, ce champ prend la valeur NULL.

NUM_PREC_RADIX

int

Nombre de bits ou de chiffres pour le calcul du nombre maximal pouvant être contenu dans la colonne. Si le type de données est un type numérique approximatif, cette colonne contient la valeur 2 pour indiquer plusieurs bits. Pour les types numériques exacts, cette colonne contient la valeur 10 pour indiquer plusieurs chiffres décimaux. Dans les autres cas, cette colonne a la valeur NULL. En combinant la précision et la base, l'application peut calculer le nombre maximal que peut contenir la colonne.

INTERVAL_PRECISION

smallint

Valeur de la précision interval si data_type est interval ; sinon NULL.

USERTYPE

smallint

Valeur usertype de la table systypes.

Notes

sp_datatype_info est équivalent à SQLGetTypeInfo dans ODBC. Les résultats retournés sont triés par DATA_TYPE, puis en fonction du niveau de précision de la concordance entre le type de données et le type de données ODBC SQL correspondant.

Autorisations

Appartenance obligatoire au rôle public.

Valeurs des codes retournés

Aucune

Exemple

Cet exemple extrait les informations pour les types de données sysname et nvarchar en spécifiant la valeur de data_type-9.

USE master;
GO
EXEC sp_datatype_info -9;
GO

Voir aussi

Référence

Procédures stockées du moteur de base de données (Transact-SQL)
Types de données (Transact-SQL)
Procédures stockées système (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005