@@PROCID (Transact-SQL)
适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例
返回当前 Transact-SQL 模块的对象标识符 (ID)。 Transact-SQL 模块可以是存储过程、用户定义函数或触发器。 不能在 CLR 模块或进程内数据访问接口中指定 @@PROCID。
语法
@@PROCID
返回类型
int
示例
以下示例使用 @@PROCID
作为 OBJECT_NAME
函数中的输入参数,在 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%';
另请参阅
CREATE FUNCTION (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
CREATE TRIGGER (Transact-SQL)
元数据函数 (Transact-SQL)
sys.objects (Transact-SQL)
sys.sql_modules (Transact-SQL)
RAISERROR (Transact-SQL)