Partager via


Afficher la définition d'une procédure stockée

Vous pouvez afficher la définition d'une procédure stockée dans SQL Server Management Studio à l'aide des options de menu de l'Explorateur d'objets ou dans l'éditeur de requête à l'aide de Transact-SQL. Cette rubrique décrit comment afficher la définition de la procédure dans l'Explorateur d'objets et en utilisant une procédure stockée système, une fonction système et un affichage catalogue d'objets dans l'éditeur de requête.

  • Avant de commencer : Sécurité

  • Pour afficher la définition d'une procédure, en utilisant : SQL Server Management Studio, Transact-SQL

Avant de commencer

Sécurité

Autorisations

[Haut de la page]

  • Procédure stockée système : sp_helptext
    Nécessite l'appartenance au rôle public. 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.

  • Fonction système : OBJECT_DEFINITION
    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.

  • Affichage catalogue d'objets : sys.sql_modules
    La visibilité des métadonnées dans les affichages catalogue est limitée aux éléments sécurisables qu'un utilisateur détient ou pour lesquels des autorisations lui ont été accordées. Pour plus d'informations, consultez Configuration de la visibilité des métadonnées.

Comment afficher la définition d'une procédure stockée

Vous pouvez utiliser l'un des éléments suivants :

  • SQL Server Management Studio

  • Transact-SQL

Utilisation de SQL Server Management Studio

Pour afficher la définition d'une procédure dans l'Explorateur d'objets

  1. Dans l'Explorateur d'objets, connectez-vous à une instance du Moteur de base de données et développez-la.

  2. Développez Bases de données, développez la base de données à laquelle appartient la procédure, puis développez Programmabilité.

  3. Développez Procédures stockées, cliquez avec le bouton droit sur la procédure, cliquez sur Générer un script de la procédure stockée en tant que, puis sur l'une des opérations suivantes : CREATE To, ALTER To ou DROP et CREATE To.

  4. Sélectionnez Nouvelle fenêtre d'éditeur de requête. Cette action affiche la définition de la procédure.

[Haut de la page]

Utilisation de Transact-SQL

Pour afficher la définition d'une procédure dans l'éditeur de requête

  • Procédure stockée système : sp_helptext

    1. Dans l'Explorateur d'objets, connectez-vous à une instance du moteur de base de données.

    2. Dans la barre d'outils, cliquez sur Nouvelle requête.

    3. Dans la fenêtre de requête, entrez l'instruction suivante qui utilise la procédure stockée système sp_helptext. Modifiez le nom de la base de données et celui de la procédure stockée pour faire référence à la base de données et à la procédure stockée de votre choix.

      USE AdventureWorks2012;
      GO
      EXEC sp_helptext N'AdventureWorks2012.dbo.uspLogError';
      
  • Fonction système : OBJECT_DEFINITION

    1. Dans l'Explorateur d'objets, connectez-vous à une instance du moteur de base de données.

    2. Dans la barre d'outils, cliquez sur Nouvelle requête.

    3. Dans la fenêtre de requête, entrez les instructions suivantes qui utilisent la fonction système OBJECT_DEFINITION. Modifiez le nom de la base de données et celui de la procédure stockée pour faire référence à la base de données et à la procédure stockée de votre choix.

      USE AdventureWorks2012;
      GO
      SELECT OBJECT_DEFINITION (OBJECT_ID(N'AdventureWorks2012.dbo.uspLogError'));
      
  • Affichage catalogue d'objets : sys.sql_modules

    1. Dans l'Explorateur d'objets, connectez-vous à une instance du moteur de base de données.

    2. Dans la barre d'outils, cliquez sur Nouvelle requête.

    3. Dans la fenêtre de requête, entrez les instructions suivantes qui utilisent l'affichage catalogue sys.sql_modules. Modifiez le nom de la base de données et celui de la procédure stockée pour faire référence à la base de données et à la procédure stockée de votre choix.

      USE AdventureWorks2012;
      GO
      SELECT definition
      FROM sys.sql_modules
      WHERE object_id = (OBJECT_ID(N'AdventureWorks2012.dbo.uspLogError'));
      

[Haut de la page]

Voir aussi

Référence

OBJECT_DEFINITION (Transact-SQL)

sys.sql_modules (Transact-SQL)

sp_helptext (Transact-SQL)

OBJECT_ID (Transact-SQL)

Concepts

Créer une procédure stockée

Modifier une procédure stockée

Supprimer une procédure stockée

Renommer une procédure stockée