当前正在执行过程名称
是否有可能在MS SQL Server中获得当前存储过程的名称? 可能有任何系统variables或函数像GETDATE()
?
你可以试试这个:
SELECT OBJECT_NAME(@@PROCID)
更新:此命令在SQL Server 2016上仍然有效。
OBJECT_SCHEMA_NAME(@@PROCID) + '.' + OBJECT_NAME(@@PROCID)
您可以使用OBJECT_NAME(@@ PROCID)
返回当前Transact-SQL模块的对象标识符(ID)。 Transact-SQL模块可以是存储过程,用户定义的函数或触发器。
在您对当前正在执行的临时存储过程的名称感兴趣的特定情况下,可以通过以下方式获取它:
select name from tempdb.sys.procedures where object_id = @@procid