Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Кто вызвал скрипт?  [new]
Трофим
Member

Откуда:
Сообщений: 3
Можно ли определить имя процедуры, которая запустила скрипт?
Идеал -
create proc WhoExec @procname varchar(75) OUT

Возвращает в @procname - имя процедуры, ктр вызвала exec
2 дек 03, 17:40    [443195]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
Glory
Member

Откуда:
Сообщений: 104760
Есть
@@PROCID - Returns the stored procedure identifier (ID) of the current procedure.

и

SET CONTEXT_INFO - Associates up to 128 bytes of binary information with the current session or connection.
2 дек 03, 17:47    [443208]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
Трофим
Member

Откуда:
Сообщений: 3
Большое спасибо, Glory!
Правда, я еще не совсем разобрался со структурой
context_info, но Вы мне очень помогли...
2 дек 03, 17:56    [443225]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31601
2Трофим
А у context_info нет структуры. Это 128 пользовательских байт в записи о коннекте.

Устанавливается set context_info 0xnnnnnnn
Читается select context_info from master.dbo.sysprocesses where spid = @@spid
2 дек 03, 18:04    [443246]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
Трофим
Member

Откуда:
Сообщений: 3
А системная информация о вызывающей процедуре недоступна?
2 дек 03, 18:23    [443275]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31601
2Трофим
А @@PROCID - это не системная?
2 дек 03, 18:41    [443301]     Ответить | Цитировать Сообщить модератору
 Re: Кто вызвал скрипт?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31601
А, ну да, это не о вызываемой, а о текущей...
2 дек 03, 18:44    [443305]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить