Поделиться через


sp_purge_jobhistory (Transact-SQL)

Удаляет записи журнала для задания.

Синтаксис

sp_purge_jobhistory 
   {   [ @job_name = ] 'job_name' | 
     | [ @job_id = ] job_id }
   [ , [ @oldest_date = ] oldest_date ]

Аргументы

  • [ @job_name= ] 'job_name'
    Имя задания, записи журнала для которого удаляются. Аргумент job_name имеет тип sysname и значение по умолчанию NULL. Необходимо задать либо аргумент job_id, либо аргумент job_name, но не оба сразу.

    ms175044.note(ru-ru,SQL.90).gifПримечание.
    Члены фиксированной серверной роли sysadmin или члены фиксированной роли базы данных SQLAgentOperatorRole могут выполнять sp_purge_jobhistory без указания аргумента job_name или параметра job_id. Когда пользователи категории sysadmin не указывают эти аргументы, данные журнала заданий для всех локальных и многосерверных заданий удаляются в диапазоне времени, заданном параметром oldest_date. Когда пользователи категории SQLAgentOperatorRole не указывают эти аргументы, данные журнала заданий для всех локальных заданий удаляются в диапазоне времени, заданном параметром oldest_date.
  • [ @job_id= ] job_id
    Идентификационный номер задания, записи журнала для которого удаляются. Аргумент job_id имеет тип uniqueidentifier и значение по умолчанию NULL. Необходимо задать либо аргумент job_id, либо аргумент job_name, но не оба сразу. Дополнительные сведения о том, как этот аргумент могут использовать пользователи категорий sysadmin или SQLAgentOperatorRole, см. в сноске к описанию аргумента @job_name.
  • [ @oldest_date = ] oldest_date
    Самая ранняя запись регистрации, которую необходимо сохранить. Аргумент oldest_date имеет тип datetime и значение по умолчанию NULL. Когда указывается аргумент oldest_date, то sp_purge_jobhistory удаляет только записи, сделанные ранее указанной.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Результирующие наборы

Нет

Замечания

Когда процедура sp_purge_jobhistory завершается успешно, возвращается сообщение.

Разрешения

По умолчанию право на выполнение этой хранимой процедуры предоставляется только членам фиксированной серверной роли sysadmin или фиксированной роли базы данных SQLAgentOperatorRole. Члены роли sysadmin могут удалять из журнала заданий любые локальные и многосерверные задания. Члены роли SQLAgentOperatorRole могут удалять из журнала заданий только любые локальные задания.

Другим пользователям, включая членов роли SQLAgentUserRole и членов роли SQLAgentReaderRole, необходимо явно предоставлять разрешение EXECUTE для sp_purge_jobhistory. После предоставления разрешения EXECUTE на эту хранимую процедуру данные пользователи могут удалять из журнала заданий только те задания, владельцами которых они являются.

Фиксированные роли базы данных SQLAgentUserRole, SQLAgentReaderRole и SQLAgentOperatorRole размещаются в базе данных msdb. Дополнительные сведения о предоставляемых им разрешениях см. в разделе Фиксированные роли базы данных агента SQL Server.

Примеры

A. Удаление журнала конкретного задания

В следующем примере удаляется история задания с именем NightlyBackups.

USE msdb ;
GO

EXEC dbo.sp_purge_jobhistory
    @job_name = N'NightlyBackups' ;
GO

Б. Удаление записи журналов для всех заданий

ms175044.note(ru-ru,SQL.90).gifПримечание.
Удалять журналы для всех заданий могут только члены фиксированной серверной роли sysadmin и члены роли SQLAgentOperatorRole. Когда пользователи категории sysadmin выполняют эту хранимую процедуру без указания параметров, из журналов заданий удаляются все локальные и многосерверные задания. Когда пользователи категории SQLAgentOperatorRole выполняют эту хранимую процедуру без указания параметров, из журналов заданий удаляются только все локальные задания.

В следующем примере данная процедура выполняется без указания параметров, и в результате удаляются все записи журнала.

USE msdb ;
GO

EXEC dbo.sp_purge_jobhistory ;
GO

См. также

Справочник

sp_help_job (Transact-SQL)
sp_help_jobhistory (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)
GRANT, предоставление разрешений на объект (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005