@@PROCID (Transact-SQL)

傳回目前 Transact-SQL 模組的物件識別碼。Transact-SQL 模組可能是預存程序、使用者自訂函數或觸發程序。您不能在 CLR 模組或進行中的資料存取提供者中指定 @@PROCID。

主題連結圖示Transact-SQL 語法慣例

語法

@@PROCID

傳回類型

int

範例

下列範例會利用 @@PROCID 作為 OBJECT_NAME 函數中的輸入參數,以在 RAISERROR 訊息中傳回預存程序的名稱。

USE AdventureWorks;
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, Phone, EmailAddress
FROM Person.Contact 
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%';