OBJECT_DEFINITION (Transact-SQL)
Mis à jour : 17 juillet 2006
Renvoie le texte source Transact-SQL de la définition de l'objet spécifié.
Conventions de la syntaxe de Transact-SQL
Syntaxe
OBJECT_DEFINITION ( object_id )
Arguments
- object_id
ID de l'objet à utiliser. object_id est de type int et est censé représenter un objet dans le contexte de la base de données active.
Exceptions
Retourne la valeur NULL en cas d'erreur ou si un appelant n'est pas autorisé à afficher l'objet.
Dans SQL Server 2005, un utilisateur peut voir uniquement les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d'un droit d'accès. Cela signifie que les fonctions intégrées générant des métadonnées, telles que OBJECT_DEFINITION, peuvent retourner la valeur NULL si l'utilisateur ne dispose d'aucune autorisation sur l'objet. Pour plus d'informations, consultez Configuration de la visibilité des métadonnées et Dépannage de la visibilité des métadonnées.
Notes
Le moteur de base de données SQL Server considère que object_id se situe dans le contexte de la base de données active. Le classement de la définition de l'objet correspond toujours au contexte de la base de données d'appel.
OBJECT_DEFINITION s'applique aux types d'objets suivants :
- C = Contrainte CHECK
- D = Valeur par défaut (contrainte ou autonome)
- P = Procédure stockée SQL
- FN = Fonction scalaire SQL
- R = Règle
- RF = Procédure de filtre de réplication
- TR = Déclencheur SQL (déclencheur DML avec une étendue de schéma ou déclencheur DDL avec une étendue de base de données ou de serveur)
- IF = Fonction table en ligne SQL
- TF = Fonction table SQL
- V = Vue
Autorisations
Les définitions de l'objet système sont visibles publiquement. La définition des objets utilisateur est visible par le propriétaire de l'objet ou les bénéficiaires de l'une des autorisations suivantes : ALTER, CONTROL, TAKE OWNERSHIP ou VIEW DEFINITION. Ces autorisations sont implicitement possédées par des membres des rôles de base de données fixes db_owner, db_ddladmin et db_securityadmin.
Type des valeurs renvoyées
nvarchar(max)
Exemples
A. Renvoi le texte source d'un objet utilisé par l'utilisateur
L'exemple suivant renvoie la définition d'un déclencheur défini par l'utilisateur, uAddress
, dans le schéma Person
. La fonction intégrée OBJECT_ID
est utilisée pour renvoyer l'identificateur d'objet du déclencheur de l'instruction OBJECT_DEFINITION
.
USE AdventureWorks;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'Person.uAddress')) AS [Trigger Definition];
GO
B. Renvoi le texte source d'un objet système
L'exemple suivant renvoie la définition de la procédure stockée système sys.sp_columns
.
USE AdventureWorks;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'sys.sp_columns')) AS [Object Definition];
GO
Voir aussi
Référence
Fonctions de métadonnées (Transact-SQL)
OBJECT_NAME (Transact-SQL)
OBJECT_ID (Transact-SQL)
sp_helptext (Transact-SQL)
sys.sql_modules (Transact-SQL)
sys.server_sql_modules
Aide et Informations
Assistance sur SQL Server 2005
Historique des modifications
Version | Historique |
---|---|
17 juillet 2006 |
|