Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di
AzureIstanza gestita di SQL di
AzureDatabase SQL in Microsoft Fabric
Restituisce l'identificatore di oggetto (ID) del modulo Transact-SQL corrente. Un modulo Transact-SQL può essere una stored procedure, una funzione definita dall'utente o un trigger. @@PROCID non può essere specificato nei moduli CLR o nel provider di accesso ai dati in-process.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
@@PROCID
Tipi restituiti
int
Esempi
Nell'esempio seguente @@PROCID viene utilizzato come parametro di input nella funzione OBJECT_NAME per restituire il nome della stored procedure nel messaggio 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%';
Vedi anche
CREATE FUNCTION (Transact-SQL)
CREA LA PROCEDURA (Transact-SQL)
CREA TRIGGER (Transact-SQL)
Funzioni per i metadati (Transact-SQL)
sys.objects (Transact-SQL)
sys.sql_moduli (Transact-SQL)
RAISERROR (Transact-SQL)