Получить имя схемы выполняемой в данный момент хранимой процедуры - PullRequest
10 голосов
/ 29 июля 2011

Есть ли способ получить владельца схемы хранимой процедуры изнутри ее реализации?

Хранимыми процессами являются World.Perform_Task и Universe.Perform_Task.Когда хранимая процедура выполняется, мне нужно получить имя схемы для выполнения некоторых задач на уровне схемы, а также объекты поиска (таблицы, столбцы и т. Д.) В этой схеме.

Я пытался Schema_Name(), но этовозвращает схему по умолчанию для вошедшего в систему пользователя (dbo), а не владельца схемы хранимой процедуры.

Как получить схему выполнения хранимой процедуры?

1 Ответ

17 голосов
/ 29 июля 2011

Вот, пожалуйста ...

OBJECT_SCHEMA_NAME(@@PROCID)

Ссылки на MSDN:

Возвращает имя схемы базы данных для объектов в области схемы

Возвращает идентификатор объекта (ID) текущего модуля Transact-SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...