Aracılığıyla paylaş


sp_delete_jobsteplog (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL Yönetilen Örneği

Argümanlarla belirtilen tüm SQL Server Agent iş adım günlüklerini kaldırır. Bu kayıtlı prosedürü veritabanında sysjobstepslogs tablosunu msdb korumak için kullanın.

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_delete_jobsteplog
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'job_name' ]
    [ , [ @step_id = ] step_id ]
    [ , [ @step_name = ] N'step_name' ]
    [ , [ @older_than = ] older_than ]
    [ , [ @larger_than = ] larger_than ]
[ ; ]

Arguments

[ @job_id = ] 'job_id'

Kaldırılacak iş adım günlüğünü içeren işin iş tanımlama numarası. @job_iduniqueidentifier'dır ve varsayılan olarak ' NULLdir.

Ya @job_id ya da @job_name belirtilmelidir, ancak ikisi de belirtilemez.

[ @job_name = ] N'job_name'

İşin adı. @job_namesysname'dir ve varsayılan olarak .NULL

Ya @job_id ya da @job_name belirtilmelidir, ancak ikisi de belirtilemez.

[ @step_id = ] step_id

İş adım kaydının silineceği işteki adımın kimlik numarası. @step_idint, varsayılan olarak .NULL Dahil edilmediyse, işteki tüm iş adım kayıtları @older_than veya @larger_than belirtilmedikçe silinir.

Ya @step_id ya da @step_name belirtilebilir, ancak ikisi de belirtilemez.

[ @step_name = ] N'step_name'

İşin adım kaydının silineceği işteki adımın adı. @step_namesysname'dir, varsayılan NULLolarak .

Ya @step_id ya da @step_name belirtilebilir, ancak ikisi de belirtilemez.

[ @older_than = ] older_than

Tutmak istediğiniz en eski iş adım kaydının tarihi ve saati. @older_thantarih saatidir ve varsayılan olarak .NULL Bu tarih ve saatten daha eski tüm iş adım kayıtları kaldırılır.

Hem @older_than hem de @larger_than belirtilebilir.

[ @larger_than = ] larger_than

Tutmak istediğiniz en büyük iş adım günlüğünün bayt cinsinden boyutu. @larger_thanint, varsayılan olarak .NULL Bu boyuttan daha büyük olan tüm iş adım kayıtları kaldırılır.

Hem @older_than hem de @larger_than belirtilebilir.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Sonuç kümesi

Yok.

Açıklamalar

sp_delete_jobsteplog veritabanında msdb yer alıyor.

Eğer @job_id veya @job_name dışında argüman belirtilmezse, belirtilen iş için tüm iş adım günlükleri silinir.

Permissions

EXECUTE Bu prosedür üzerinde izinler verebilirsiniz, ancak bu izinler SQL Server yükseltmesi sırasında geçersiz kalabilir.

Diğer kullanıcılara, veritabanındaki aşağıdaki sabit veritabanı rollerinden birine msdb sahip olmalıdır:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Bu rollerin izinleri hakkında detaylar için SQL Server Agent Fixed Database Roles bölümüne bakınız.

Sadece sistem yöneticisi üyeleri, başka bir kullanıcıya ait olan iş adım günlüğünü silebilir.

Örnekler

A. Bir işten tüm iş adım kayıtlarını kaldır

Aşağıdaki örnek, işin Weekly Sales Data Backuptüm iş adım kayıtlarını kaldırır.

USE msdb;
GO

EXECUTE dbo.sp_delete_jobsteplog @job_name = N'Weekly Sales Data Backup';
GO

B. Belirli bir iş adımı için iş adım kaydını kaldır

Aşağıdaki örnek, işteki Weekly Sales Data Backup2. adım için iş adım kaydını kaldırır.

USE msdb;
GO

EXECUTE dbo.sp_delete_jobsteplog
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 2;
GO

C. Yaş ve boyuta göre tüm iş adım kayıtlarını kaldırın

Aşağıdaki örnek, 25 Ekim 2005 öğlesinden eski ve 100 megabayttan (MB) büyük olan tüm iş adım günlüklerini işten Weekly Sales Data Backupkaldırır.

USE msdb;
GO

EXECUTE dbo.sp_delete_jobsteplog
    @job_name = N'Weekly Sales Data Backup',
    @older_than = '10/25/2005 12:00:00',
    @larger_than = 104857600;
GO