@@PROCID (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance
Retourne l’identificateur (ID) d’objet du module Transact-SQL en cours. Un module Transact-SQL peut être une procédure stockée, une fonction définie par l’utilisateur ou un déclencheur. @@PROCID ne peut pas être spécifié dans des modules CLR ou dans le fournisseur d'accès aux données en cours de traitement.
Conventions de la syntaxe Transact-SQL
Syntaxe
@@PROCID
Types de retour
int
Exemples
L'exemple suivant utilise @@PROCID
comme paramètre d'entrée dans la fonction OBJECT_NAME
pour retourner le nom de la procédure stockée dans le message RAISERROR
.
USE AdventureWorks2022;
GO
IF OBJECT_ID ( 'usp_FindName', 'P' ) IS NOT NULL
DROP PROCEDURE usp_FindName;
GO
CREATE PROCEDURE usp_FindName
@lastname VARCHAR(40) = '%',
@firstname VARCHAR(20) = '%'
AS
DECLARE @Count INT;
DECLARE @ProcName NVARCHAR(128);
SELECT LastName, FirstName
FROM Person.Person
WHERE FirstName LIKE @firstname AND LastName LIKE @lastname;
SET @Count = @@ROWCOUNT;
SET @ProcName = OBJECT_NAME(@@PROCID);
RAISERROR ('Stored procedure %s returned %d rows.', 16,10, @ProcName, @Count);
GO
EXECUTE dbo.usp_FindName 'P%', 'A%';
Voir aussi
CREATE FUNCTION (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
CREATE TRIGGER (Transact-SQL)
Fonctions de métadonnées (Transact-SQL)
sys.objects (Transact-SQL)
sys.sql_modules (Transact-SQL)
RAISERROR (Transact-SQL)