Partager via


sp_sproc_columns (Transact-SQL)

Fournit des informations de colonne pour une fonction définie par l'utilisateur ou une procédure stockée unique dans l'environnement courant.

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

Syntaxe

sp_sproc_columns [[@procedure_name = ] 'name'] 
    [ , [@procedure_owner = ] 'owner'] 
    [ , [@procedure_qualifier = ] 'qualifier'] 
    [ , [@column_name = ] 'column_name']
    [ , [@ODBCVer = ] 'ODBCVer']
    [ , [@fUsePattern = ] 'fUsePattern']

Arguments

  • [ @procedure_name = ] 'name'
    Nom de la procédure utilisée pour renvoyer les informations du catalogue. L'argument name est de type nvarchar(390) et %, qui en est la valeur par défaut, représente toutes les tables de la base de données active. Les filtres de comparaison génériques sont pris en charge.
  • [ @procedure_owner =] 'owner'
    Nom du propriétaire de la procédure. L'argument owner est de type nvarchar(384), avec NULL comme valeur par défaut. Les filtres de comparaison génériques sont pris en charge. Si owner n'est pas spécifié, les règles de visibilité de la procédure par défaut du SGDB sous-jacent s'appliquent.

    Dans SQL Server 2005, si l'utilisateur courant possède une procédure du nom spécifié, ce sont les informations relatives à cette procédure qui seront renvoyées. Si owner n'est pas spécifié et que l'utilisateur actuel ne possède pas de procédure du nom spécifié, sp_sproc_columns va rechercher une procédure portant le nom spécifié et appartenant au propriétaire de la base de données. Si la procédure existe, les informations relatives à ses colonnes sont renvoyées.

  • [ @procedure_qualifier =] 'qualifier'
    Nom du qualificateur de la procédure. L'argument qualifier est de type sysname avec NULL comme valeur par défaut. Divers produits SGDB prennent en charge les noms de table en trois parties (qualifier.owner.name). Dans SQL Server, ce paramètre représente le nom de la base de données. Dans certains SGBD, elle représente le nom (au sens du serveur) de l'environnement de base de données de la table.
  • [ @column_name =] 'column_name'
    Colonne unique utilisée lorsqu'une seule colonne d'informations de catalogue est souhaitée. L'argument column_name est de type nvarchar(384), avec NULL comme valeur par défaut. Si l'argument column_name est omis, toutes les colonnes sont retournées. Les filtres de comparaison génériques sont pris en charge. Pour assurer une interopérabilité maximale, le client de la passerelle ne doit utiliser que les modèles de comparaison standard de SQL-92 (caractères génériques % et _).
  • [ @ODBCVer =] 'ODBCVer'
    Version d'ODBC utilisée. L'argument ODBCVer est de type int, avec 2 comme valeur par défaut désignant ODBC version 2.0. Pour plus d'informations sur la différence entre la version 2.0 et la version 3.0 d'ODBC, consultez la spécification ODBC SQLProcedureColumns pour ODBC version 3.0.
  • [ @fUsePattern =] 'fUsePattern'
    Détermine si le trait de soulignement (_), le signe de pourcentage (%) et les crochets ([ ]) sont interprétés en tant que caractères génériques. Les valeurs qui sont acceptées par l'expression sont 0 (la correspondance de modèle est désactivée) et 1 (la correspondance de modèle est activée). L'argument fUsePattern est de type bit, avec 1 comme valeur par défaut.

Jeux de résultats

Nom de colonne Type de données Description

PROCEDURE_QUALIFIER

sysname

Nom de l'identificateur de procédure. Cette colonne peut être NULL.

PROCEDURE_OWNER

sysname

Nom du propriétaire de la procédure. Cette colonne renvoie toujours une valeur.

PROCEDURE_NAME

nvarchar(134)

Nom de la procédure. Cette colonne renvoie toujours une valeur.

COLUMN_NAME

sysname

Nom de colonne de chacune des colonnes de TABLE_NAME renvoyées. Cette colonne renvoie toujours une valeur.

COLUMN_TYPE

smallint

Ce champ renvoie toujours une valeur :

0 = SQL_PARAM_TYPE_UNKNOWN

1 = SQL_PARAM_TYPE_INPUT

2 = SQL_PARAM_TYPE_OUTPUT

3 = SQL_RESULT_COL

4 = SQL_PARAM_OUTPUT

5 = SQL_RETURN_VALUE

DATA_TYPE

smallint

Code entier d'un type de données ODBC. Si ce type de données ne peut pas être mappé à un type SQL-92, la valeur est NULL. Le nom de type de données natif est renvoyé dans la colonne TYPE_NAME.

TYPE_NAME

sysname

Représentation sous forme de chaîne du type de données. Nom du type de données, tel qu'il existe dans le SGBD sous-jacent.

PRECISION

int

Nombre de chiffres significatifs. La valeur renvoyée pour la colonne PRECISION est en base 10.

LENGTH

int

Taille de transfert des données.

SCALE

smallint

Nombre de chiffres situés à droite du séparateur décimal.

RADIX

smallint

Base des types numériques.

NULLABLE

smallint

Précise la possibilité de valeur nulle :

1 = Le type de données peut être créé en autorisant des valeurs NULL.

0 = Les valeurs NULL ne sont pas autorisées.

NOTES

varchar(254)

Description de la colonne de procédure. SQL Server ne retourne pas de valeur pour cette colonne.

COLUMN_DEF

nvarchar(4000)

Valeur par défaut de la colonne.

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 SQL-92. Cette colonne renvoie toujours une valeur.

SQL_DATETIME_SUB

smallint

Sous-code datetime ou interval SQL-92 si la valeur de SQL_DATA_TYPE est SQL_DATETIME ouSQL_INTERVAL. Pour les types de données autres que datetime et interval SQL-92, ce champ est NULL.

CHAR_OCTET_LENGTH

int

Longueur maximale en octets d'une colonne de type de données character ou binary. Pour tous les autres types de données, cette colonne renvoie une valeur NULL.

ORDINAL_POSITION

int

Numéro d'ordre de la colonne dans la table. La première colonne dans la table porte le numéro 1. Cette colonne renvoie toujours une valeur.

IS_NULLABLE

varchar(254)

Possibilité de valeur nulle dans la colonne de la table. Les règles ISO sont utilisées pour déterminer la possibilité de valeur NULL. Un SGBD compatible avec la norme ISO SQL ne peut pas renvoyer de chaîne vide.

Affiche YES si la colonne peut comprendre des valeurs NULL et NO dans le cas contraire.

Cette colonne renvoie une chaîne de longueur zéro si la possibilité de valeur NULL n'est pas connue.

La valeur renvoyée pour cette colonne est différente de celle renvoyée pour la colonne NULLABLE.

SS_DATA_TYPE

tinyint

Type de données SQL Server utilisé par les procédures stockées étendues. Pour plus d'informations, consultez Types de données (Transact-SQL).

Notes

sp_sproc_columns est équivalente à SQLProcedureColumns dans ODBC. Les résultats renvoyés sont triés par PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME et l'ordre dans lequel les paramètres apparaissent dans la définition de la procédure.

Autorisations

Nécessite l'autorisation SELECT pour le schéma.

Valeurs des codes renvoyés

Aucun

Voir aussi

Référence

Procédures stockées de catalogue (Transact-SQL)
Procédures stockées système (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005