Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Как средствами T-SQL узнать запущен ли джоб?  [new]
ааааааааа
Guest
Как средствами T-SQL узнать запущен ли джоб?
Заранее благодарен
22 июн 06, 12:27    [2801510]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
msdb..sp_help_job. Поле current_execution_status резалтсета.
22 июн 06, 12:42    [2801596]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
табличка sysjobhistory в msdb поле run_status + BOL
22 июн 06, 12:50    [2801648]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
aaaaaaaaa
Guest
To SanyL: Спасибо за подсказку, но при запуске джоба в табличке sysjobhistory у меня ничего не появилось. Появилось только тогда, когда я остановил выполнение джоба. Может обьясните(в BOLе как-то маловато про это написано)

To pkarklin: Спасибо за подсказку. Но вот написал:

 create table #Temp1 .....
 insert into #Temp1 
     exec msdb.dbo.sp_help_job @job_name = 'job1', @job_aspect = 'JOB' 

пишет:
Server: Msg 8164, Level 16, State 1, Procedure sp_get_composite_job_info, Line 67
An INSERT EXEC statement cannot be nested.
В чем тут проблема?
22 июн 06, 13:29    [2801915]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
В том, что "An INSERT EXEC statement cannot be nested." Т.е. схп уже содержит insert ...exec.
22 июн 06, 13:34    [2801951]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
а что объяснять


Status of the job execution:
0 = Failed
1 = Succeeded
2 = Retry
3 = Canceled
4 = In progress


должен был быть этот джоб со статусом 4
22 июн 06, 13:34    [2801952]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
ааааааа
Guest
To pkarklin: А можете подсказать как мне проверить запущен ли джоб в конструкции if. Т.е как загнать результат схп в какую нибуть переменную.

SanyL: Я же говорю, что после запуска джоба табличка sysjobhistory у меня пустая, а появляються записи в ней только после остановки джоба.
22 июн 06, 13:44    [2802021]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

так попробуйте:
SELECT a.*
FROM OPENROWSET('SQLOLEDB','(local)';'sa';'',
   'set fmtonly off exec msdb..sp_help_job') AS a
или заглянуть в текст sp_help_job и на его основе написать свою процедуру...

Posted via ActualForum NNTP Server 1.3

22 июн 06, 13:50    [2802063]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
daw опередил. :)
22 июн 06, 14:00    [2802131]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
ааааааа
Guest
daw, pkarklin большое спасибо
22 июн 06, 14:08    [2802183]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
newby2
Guest
daw

так попробуйте:
SELECT a.*
FROM OPENROWSET('SQLOLEDB','(local)';'sa';'',
   'set fmtonly off exec msdb..sp_help_job') AS a


мне не доступен пароль sa.
подскажите, как можно сделать вызов через trusted connection?
16 окт 07, 15:16    [4800075]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
Бывалый ЗЫ
Member

Откуда: МСК
Сообщений: 81
Уважаемый newby2:
Читай help!!!
Execute permissions default to the public role in the msdb database. A user who can execute this procedure and is a member of the sysadmin fixed role can also create, delete, or update a job, job step, job category, job schedule, job server, task, or job history information. A user who is not a member of the sysadmin fixed role can use sp_help_job to view only the jobs he/she owns.
16 окт 07, 17:17    [4801177]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
newby2
Guest
Бывалый ЗЫ
Уважаемый newby2:
Читай help!!!
Execute permissions default to the public role in the msdb database. A user who can execute this procedure and is a member of the sysadmin fixed role can also create, delete, or update a job, job step, job category, job schedule, job server, task, or job history information. A user who is not a member of the sysadmin fixed role can use sp_help_job to view only the jobs he/she owns.

спасибо, Бывалый. я это знаю.
меня интересует как в запросе, предложенным daw, не вводить логин и пароль.
17 окт 07, 10:31    [4803383]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Например, так:

SELECT a.*
FROM OPENROWSET('SQLNCLI', 'Server=(local);Trusted_Connection=yes;',
     'SELECT GroupName, Name, DepartmentID
      FROM AdventureWorks.HumanResources.Department
      ORDER BY GroupName, Name') AS a;
17 окт 07, 10:35    [4803426]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
newby2
Guest
pkarklin
Например, так:

SELECT a.*
FROM OPENROWSET('SQLNCLI', 'Server=(local);Trusted_Connection=yes;',
     'SELECT GroupName, Name, DepartmentID
      FROM AdventureWorks.HumanResources.Department
      ORDER BY GroupName, Name') AS a;


спасибо огромное, pkarklin.
а то я уже начала писать свою процедуру.
Хорошо что есть sql.ru и талантливые люди в нем.
17 окт 07, 10:42    [4803494]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
dimakz
Member

Откуда:
Сообщений: 1574
ребята,
как написать скрипт, кот.выводит только ту инфу (при выполнении msdb..sp_help_job),
где
current_execution_status
0 = Failed или 3 = Canceled ???
17 мар 08, 14:43    [5419034]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
dimakz
Member

Откуда:
Сообщений: 1574
где то я на форуме видел сам скрипт, через селект....подскажиет
17 мар 08, 15:03    [5419210]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
Glory
Member

Откуда:
Сообщений: 104760
dimakz
где то я на форуме видел сам скрипт, через селект....подскажиет

Самому взглянуть на текст msdb..sp_help_job не судьба ?
17 мар 08, 15:05    [5419215]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
dimakz
Member

Откуда:
Сообщений: 1574
ребята,
а если статус =0 или 3
0 = Failed
3 = Canceled

то как мне запустить этот джоб?
18 мар 08, 14:16    [5424086]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
Glory
Member

Откуда:
Сообщений: 104760
sp_start_job
18 мар 08, 14:19    [5424112]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
dimakz
Member

Откуда:
Сообщений: 1574
sp_start_job
'job_id' так?
18 мар 08, 14:29    [5424184]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
Glory
Member

Откуда:
Сообщений: 104760
dimakz
sp_start_job
'job_id' так?

Хелп не установлен что ли ?
18 мар 08, 14:31    [5424200]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
dimakz
Member

Откуда:
Сообщений: 1574
ну подскажите, пожалуйста
хелпа нет
18 мар 08, 14:41    [5424288]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
Glory
Member

Откуда:
Сообщений: 104760
dimakz
ну подскажите, пожалуйста
хелпа нет

А в QA в дереве объектов открыть список параметров процедуры тоже не судьба ?
18 мар 08, 14:43    [5424298]     Ответить | Цитировать Сообщить модератору
 Re: Как средствами T-SQL узнать запущен ли джоб?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
dimakz
ну подскажите, пожалуйста
хелпа нет


USE msdb
GO
sp_helptext 'sp_start_job'
18 мар 08, 14:44    [5424315]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить