sp_attach_schedule (Transact-SQL)
Configura una programación para un trabajo.
Sintaxis
sp_attach_schedule
{ [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,
{ [ @schedule_id = ] schedule_id
| [ @schedule_name = ] 'schedule_name' }
Argumentos
- [ @job_id= ] job_id
Número de identificación del trabajo al que se va a agregar la programación. job_id es de tipo uniqueidentifier y su valor predeterminado es NULL.
[ @job_name = ] 'job_name'
Nombre del trabajo al que se va a agregar la programación. job_namees de tipo sysname y su valor predeterminado es NULL.[!NOTA] Se debe especificar job_id o job_name, pero no ambos.
- [ @schedule_id = ] schedule_id
Número de identificación de la programación que se va a configurar para el trabajo. schedule_ides de tipo int y su valor predeterminado es NULL.
[ @schedule_name = ] 'schedule_name'
Nombre de la programación que se va a configurar para el trabajo. schedule_namees de tipo sysname y su valor predeterminado es NULL.[!NOTA] Se debe especificar schedule_id o schedule_name, pero no ambos.
Notas
La programación y el trabajo deben tener el mismo propietario.
Se puede configurar una programación para más de un trabajo. Se puede ejecutar un trabajo en más de una programación.
Este procedimiento almacenado se tiene que ejecutar en la base de datos msdb.
Permisos
De forma predeterminada, los miembros de la función fija de servidor sysadmin pueden ejecutar este procedimiento almacenado. A otros usuarios debe concederse una de las siguientes funciones fijas de base de datos del Agente SQL Server en la base de datos msdb:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Para obtener más información acerca de los permisos de estas funciones, vea Funciones fijas de base de datos del Agente SQL Server.
Microsoft SQL Server comprueba si el usuario es propietario del trabajo y la programación.
Ejemplos
En el siguiente ejemplo se crea una programación llamada NightlyJobs
. Los trabajos que utilizan esta programación se ejecutan a diario cuando la hora del servidor es 01:00. En el ejemplo se adjunta la programación al trabajo BackupDatabase
y al trabajo RunReports
.
[!NOTA] En este ejemplo se da por supuesto que el trabajo
BackupDatabase
y el trabajoRunReports
ya existen.
USE msdb ;
GO
EXEC sp_add_schedule
@schedule_name = N'NightlyJobs' ,
@freq_type = 4,
@freq_interval = 1,
@active_start_time = 010000 ;
GO
EXEC sp_attach_schedule
@job_name = N'BackupDatabase',
@schedule_name = N'NightlyJobs' ;
GO
EXEC sp_attach_schedule
@job_name = N'RunReports',
@schedule_name = N'NightlyJobs' ;
GO
Vea también
Referencia
sp_add_schedule (Transact-SQL)
sp_update_schedule (Transact-SQL)
sp_delete_schedule (Transact-SQL)