sp_start_job (T-SQL)

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Menginstruksikan SQL Server Agent untuk segera menjalankan pekerjaan.

Konvensi sintaks transact-SQL

Sintaks

sp_start_job
    [ [ @job_name = ] N'job_name' ]
    [ , [ @job_id = ] 'job_id' ]
    [ , [ @error_flag = ] error_flag ]
    [ , [ @server_name = ] N'server_name' ]
    [ , [ @step_name = ] N'step_name' ]
    [ , [ @output_flag = ] output_flag ]
[ ; ]

Argumen

[ @job_name = ] N'job_name'

Nama pekerjaan yang akan dimulai. @job_name adalah sysname, dengan default NULL.

Baik @job_id atau @job_name harus ditentukan, tetapi keduanya tidak dapat ditentukan.

[ @job_id = ] 'job_id'

Nomor identifikasi pekerjaan yang akan dimulai. @job_id adalah uniqueidentifier, dengan default NULL.

Baik @job_id atau @job_name harus ditentukan, tetapi keduanya tidak dapat ditentukan.

[ @error_flag = ] error_flag

Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.

[ @server_name = ] N'server_name'

Server target tempat memulai pekerjaan. @server_name adalah sysname, dengan default NULL. @server_name harus menjadi salah satu server target tempat pekerjaan saat ini ditargetkan.

[ @step_name = ] N'step_name'

Nama langkah untuk memulai eksekusi pekerjaan. @step_name adalah sysname, dengan default NULL. Hanya berlaku untuk pekerjaan lokal.

[ @output_flag = ] output_flag

Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.

Mengembalikan nilai kode

0 (berhasil) atau 1 (kegagalan).

Tataan hasil

Tidak ada.

Keterangan

Prosedur tersimpan ini ada di msdb database.

Prosedur tersimpan sp_start_job ini berbagi nama dengan objek serupa untuk layanan Azure Elastic Jobs untuk Azure SQL Database. Untuk informasi tentang versi pekerjaan elastis, lihat jobs.sp_start_job (Azure Elastic Jobs) (Transact-SQL).

Prosedur tersimpan ini dimiliki oleh peran db_owner . Anda dapat memberikan EXECUTE izin untuk pengguna mana pun, tetapi izin ini dapat ditimpa selama peningkatan SQL Server.

Pengguna lain harus diberikan salah satu peran database tetap SQL Server Agent berikut dalam msdb database:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Untuk detail tentang izin peran ini, lihat Peran Database Tetap Agen SQL Server.

Anggota SQLAgentUserRole dan SQLAgentReaderRole hanya dapat memulai pekerjaan yang mereka miliki. Anggota SQLAgentOperatorRole dapat memulai semua pekerjaan lokal, termasuk pekerjaan yang dimiliki oleh pengguna lain. Anggota sysadmin dapat memulai semua pekerjaan lokal dan multiserver.

Contoh

Contoh berikut memulai pekerjaan bernama Weekly Sales Data Backup.

USE msdb;
GO

EXEC dbo.sp_start_job N'Weekly Sales Data Backup';
GO