Est-il possible d'obtenir le nom de la procédure stockée actuelle dans MS SQL Server?
Peut-être qu'il y a une variable système ou une fonction comme GETDATE()
?
sql-server
sql-server-2008
tsql
stored-procedures
Sergey Metlov
la source
la source
la source
BEGIN TRAN GO CREATE PROC utility.TempProc AS SELECT OBJECT_SCHEMA_NAME(@@PROCID)+'.'+OBJECT_NAME(@@PROCID) GO EXEC utility.TempProc GO ROLLBACK GO BEGIN TRAN GO CREATE PROC utility.#TempProc AS SELECT OBJECT_SCHEMA_NAME(@@PROCID)+'.'+OBJECT_NAME(@@PROCID) GO EXEC utility.#TempProc GO ROLLBACK GO
Vous pouvez utiliser OBJECT_NAME (@@ PROCID)
la source
Dans le cas spécifique où vous êtes intéressé par le nom de la procédure stockée temporaire en cours d'exécution , vous pouvez l'obtenir via:
Vous ne pouvez pas utiliser la réponse acceptée dans SQL Server pour rechercher le nom de la procédure stockée temporaire en cours d'exécution:
la source
Vous pouvez vérifier
NULL
avant d'obtenir le schéma et le nom de la procédure stockée.Cela signifie que vous pouvez obtenir les bonnes données même pour les procédures stockées temporaires (globales) (cliquez sur l'image pour l'agrandir):
la source