2014-09-16 4 views
0

Я ищу, чтобы контролировать давно работает скрипт в Sql Server 2008.Мониторинг давно работает партия в SQLServer 2008

Я ищу эквивалент dbms_application_info в оракула. Я хочу установить статус в сеансе во время выполнения и контролировать с помощью таблицы v$session.

Я знаю, что я могу настроить таблицу событий, но я подумал, что, возможно, есть решение для сборки (хотя я очень сомневаюсь, что он работал с sql-сервером какое-то время).

+0

Как насчет ['SET CONTEXT_INFO'] (http://msdn.microsoft.com/en-us/library/ms187768.aspx)/[' CONTEXT_INFO'] (http://msdn.microsoft.com/ru -us/библиотека/ms180125.aspx)? – stakx

+0

Или используйте * временную * таблицу состояния - либо через табличную переменную '@ table' (локальную для пакета), либо как временную локальную таблицу' # table' (локальную для сеанса). – stakx

+0

@stakk - я вижу, что это разрешает только двоичные данные. Я хочу установить строку, например «Установленные данные загрузки на самом деле ...»; – haki

ответ

0

Вы можете создать глобальную временную таблицу (просто предварив имя таблицы с ##) и вставить свои данные о состоянии задания в него:

CREATE TABLE ##status … 

Глобальные временные таблицы видно других сеансов/соединений (при этом " глобальный ") и автоматически удаляется, как только все связанные с ним соединения будут закрыты.

Для пояснения временных таблиц в SQL Server см., Например, вопрос переполнения стека "Local and global temporary tables in SQL Server" и особенно this answer listing the different kinds of temporary tables.