Udostępnij za pośrednictwem


sp_purge_jobhistory (języka Transact-SQL)

Usuwa rekordy historia zadanie.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

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

Argumenty

  • [ @job_name= ] 'job_name'
    Nazwa zadanie , dla którego mają zostać usunięte rekordy historia .job_namejest sysname, domyślna wartość NULL.Albo job_id lub job_name musi być określona, ale nie może być jednocześnie określone.

    Ostrzeżenie

    Członkowie sysadmin stała rola serwera lub członkami SQLAgentOperatorRole stałą rola bazy danych można wykonać sp_purge_jobhistory bez określania job_name lub job_id.Gdy sysadmin użytkownicy nie określić argumenty, zadanie historia dla wszystkich zadań lokalnych i propagując zostanie usunięta w czas określonym przez oldest_date.Gdy SQLAgentOperatorRole użytkownicy nie określić argumenty, zadanie historia dla wszystkich zadań lokalnego zostanie usunięty w czas określonym przez oldest_date.

  • [ @job_id= ] job_id
    Numer identyfikacyjny zadanie zadanie dla rekordów, które mają zostać usunięte.job_idjest uniqueidentifier, domyślna wartość NULL.Albo job_id lub job_name musi być określona, ale nie może być jednocześnie określone.Patrz Uwaga w opisie @ job_name informacji na temat sysadmin lub SQLAgentOperatorRole użytkownicy mogą używać tego argumentu.

  • [ @ oldest_date =] oldest_date
    Najstarsze rekord, aby zachować w historia.oldest_datejest datetime, domyślna wartość NULL.Gdy oldest_date jest określony, sp_purge_jobhistory usuwa tylko rekordy, które są starsze niż określona wartość.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Zestawy wyników

Brak

Uwagi

Gdy sp_purge_jobhistory zakończy się pomyślnie, zwracany jest komunikat.

Uprawnienia

Domyślnie tylko członkowie sysadmin stała rola serwera lub SQLAgentOperatorRole stałej rola bazy danych można wykonać tę procedura składowana.Członkowie sysadmin można trwale usunąć zadanie historia wszystkich lokalnych i propagując zadań.Członkowie SQLAgentOperatorRole można trwale usunąć zadanie historia wszystkich tylko lokalne zadania.

Inni użytkownicy, w tym członków SQLAgentUserRole i członkowie SQLAgentReaderRole, musi wyraźnie być przyznane uprawnienie Wykonywanie na sp_purge_jobhistory.Po jest udzielone uprawnienie do wykonywania tej procedura składowana, ci użytkownicy tylko można trwale usunąć historia zadania, których jest właścicielem.

SQLAgentUserRole, SQLAgentReaderRole, i SQLAgentOperatorRole ról stałej bazy danych są w msdb bazy danych.Szczegółowe informacje na temat swoich uprawnień, zobacz Ról stałej bazy danych programu SQL Server Agent.

Przykłady

A.Usuwanie historia dla określonego zadanie

W następującym przykładzie usunięto historia zadanie o nazwie NightlyBackups.

USE msdb ;
GO

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

B.Usuń historia wszystkich zadań

Ostrzeżenie

Tylko członkowie sysadmin stała rola serwera i członków SQLAgentOperatorRole można usunąć historia wszystkich zadań.Gdy sysadmin użytkowników wykonać tej procedura składowana bez parametrów zadanie historia wszystkich zadań lokalnych i propagując jest czyszczona.Gdy SQLAgentOperatorRole użytkownikom wykonać przeczyszczone ta procedura składowana bez parametrów tylko zadanie historia dla wszystkich zadań lokalnych.

Poniższy przykład wykonuje procedurę bez parametrów, aby usunąć wszystkie rekordy historia .

USE msdb ;
GO

EXEC dbo.sp_purge_jobhistory ;
GO