获取当前正在执行的存储过程的模式名称

时间:2011-07-29 14:14:04

标签: sql sql-server-2008 stored-procedures

有没有办法从其实现中检索商店过程的架构所有者?

存储过程为World.Perform_TaskUniverse.Perform_Task。执行存储过程时,我需要检索模式的名称以执行某些模式级别任务,并查找该模式中的对象(表,列等)。

我尝试Schema_Name()但它返回登录用户的默认架构(dbo)而不是存储过程的架构所有者。

如何获取正在执行的存储过程的架构?

1 个答案:

答案 0 :(得分:15)

你去......

OBJECT_SCHEMA_NAME(@@PROCID)

MSDN的链接:

  

返回架构范围对象的数据库架构名称

  

返回当前Transact-SQL模块的对象标识符(ID)。