sp_update_schedule (Transact-SQL)
Cambia la configuración de una programación del Agente SQL Server.
Sintaxis
sp_update_schedule
{ [ @schedule_id = ] schedule_id
| [ @name = ] 'schedule_name' }
[ , [ @new_name = ] new_name ]
[ , [ @enabled = ] enabled ]
[ , [ @freq_type = ] freq_type ]
[ , [ @freq_interval = ] freq_interval ]
[ , [ @freq_subday_type = ] freq_subday_type ]
[ , [ @freq_subday_interval = ] freq_subday_interval ]
[ , [ @freq_relative_interval = ] freq_relative_interval ]
[ , [ @freq_recurrence_factor = ] freq_recurrence_factor ]
[ , [ @active_start_date = ] active_start_date ]
[ , [ @active_end_date = ] active_end_date ]
[ , [ @active_start_time = ] active_start_time ]
[ , [ @active_end_time = ] active_end_time ]
[ , [ @owner_login_name = ] 'owner_login_name' ]
[ , [ @automatic_post =] automatic_post ]
Argumentos
[ @schedule_id = ] schedule_id
Es el identificador de la programación que se va a modificar. schedule_id es de tipo int y no tiene ningún valor predeterminado. Debe especificarse schedule_id o schedule_name.[ @name = ] 'schedule_name'
Es el nombre de la programación que se va a modificar. schedule_namees de tipo sysname y no tiene valor predeterminado. Debe especificarse schedule_id o schedule_name.[ @new_name= ] new_name
Es el nombre nuevo de la programación. new_name es de tipo sysname y su valor predeterminado es NULL. Si new_name es NULL, el nombre de la programación no varía.[ @enabled = ] enabled
Indica el estado actual de la programación. enabledes de tipo tinyint y su valor predeterminado es 1 (habilitado). Si el valor es 0, la programación no está habilitada. Si la programación no está habilitada, no se ejecuta ningún trabajo en esta programación.[ @freq_type = ] freq_type
Es un valor que indica cuándo va a ejecutarse un trabajo. freq_typees de tipo int, su valor predeterminado es 0 y puede ser uno de los valores siguientes.Valor
Descripción
1
Una vez
4
Diariamente
8
Semanalmente
16
Mensualmente
32
Mensualmente, con relación a freq interval
64
Se ejecuta cuando se inicia el servicio SQLServerAgent
128
Se ejecuta cuando el equipo está inactivo
[ @freq_interval = ] freq_interval
Son los días en los que se ejecuta un trabajo. freq_interval es de tipo int, su valor predeterminado es 0 y depende del valor de freq_type.Valor de freq_type
Efecto en freq_interval
1 (una vez)
freq_interval no se utiliza.
4 (diariamente)
Cada freq_interval días.
8 (semanalmente)
freq_interval es uno o más de los siguientes (combinados con un operador lógico OR):
1 = Domingo
2 = Lunes
4 = Martes
8 = Miércoles
16 = Jueves
32 = Viernes
64 = Sábado
16 (mensualmente)
En el día freq_interval del mes.
32 (relativo mensual)
freq_interval es uno de los siguientes:
1 = Domingo
2 = Lunes
3 = Martes
4 = Miércoles
5 = Jueves
6 = Viernes
7 = Sábado
8 = Día
9 = Día de la semana
10 = Día del fin de semana
64 (cuando se inicia el servicio SQLServerAgent)
freq_interval no se utiliza.
128
freq_interval no se utiliza.
[ @freq_subday_type = ] freq_subday_type
Especifica las unidades de freq_subday_interval*.* freq_subday_typees de tipo int, su valor predeterminado es 0 y puede tener uno de estos valores.Valor
Descripción (unidad)
0x1
A la hora especificada
0x2
Segundos
0x4
Minutos
0x8
Horas
[ @freq_subday_interval = ] freq_subday_interval
Es el número de períodos freq_subday_type que transcurren entre cada ejecución de un trabajo. freq_subday_intervales de tipo int y su valor predeterminado es 0.[ @freq_relative_interval = ] freq_relative_interval
Número de repeticiones de freq_interval del trabajo cada mes si freq_interval es 32 (relativo mensual). freq_relative_intervales de tipo int, su valor predeterminado es 0 y puede ser uno de los valores siguientes.Valor
Descripción (unidad)
1
Primera
2
Segunda
4
Tercera
8
Cuarta
16
Última
[ @freq_recurrence_factor = ] freq_recurrence_factor
Es el número de semanas o meses entre la ejecución programada de un trabajo. freq_recurrence_factor se utiliza solo si freq_type es 8, 16 ó 32. freq_recurrence_factores de tipo int y su valor predeterminado es 0.[ @active_start_date = ] active_start_date
Es la fecha en la que puede empezar la ejecución del trabajo. active_start_datees de tipo int y su valor predeterminado es NULL, lo que indica la fecha de hoy. La fecha tiene el formato AAAAMMDD. Si active_start_date no es NULL, la fecha tiene que ser posterior o igual a 19900101.Una vez creada la programación, revise la fecha de inicio y confirme que es correcta. Para obtener más información, vea la sección "Programar fechas de inicio" de Crear y adjuntar programaciones a trabajos.
[ @active_end_date = ] active_end_date
Es la fecha en la que puede detenerse la ejecución de un trabajo. active_end_datees de tipo int, y su valor predeterminado es 99991231, lo que indica el 31 de diciembre de 9999. Tiene el formato AAAAMMDD.[ @active_start_time = ] active_start_time
Es la hora de un día entre active_start_date y active_end_date en que se inicia la ejecución del trabajo. active_start_timees de tipo int y su valor predeterminado es 000000, lo que indica 12:00:00 a.m. en un reloj de 24 horas. Se debe especificar con el formato HHMMSS.[ @active_end_time = ] active_end_time
Es la hora de un día entre active_start_date y active_end_date en que finaliza la ejecución del trabajo. active_end_timees de tipo int y su valor predeterminado es 235959, lo que indica 11:59:59 p.m. en un reloj de 24 horas. Se debe especificar con el formato HHMMSS.[ @owner_login_name= ] 'owner_login_name']
Es el nombre de la entidad de seguridad del servidor a la que pertenece la programación. owner_login_name es de tipo sysname y su valor predeterminado es NULL, lo que indica que la programación pertenece al creador.[ @automatic_post =] automatic_post
Reservado.
Valores de código de retorno
0 (correcto) o 1 (error)
Comentarios
Todos los trabajos que utilizan la programación emplean de inmediato la nueva configuración. No obstante, el cambio de la programación no detiene la ejecución en curso de los trabajos.
Permisos
De manera predeterminada, este procedimiento almacenado lo pueden ejecutar los miembros del rol fijo de servidor sysadmin. Al resto de usuarios se les debe conceder uno de los siguientes roles fijos 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.
Solo los miembros de sysadmin pueden modificar una programación que pertenece a otro usuario.
Ejemplos
En el siguiente ejemplo se cambia el estado de habilitación de la programación NightlyJobs a 0 y se establece el propietario en terrid.
USE msdb ;
GO
EXEC dbo.sp_update_schedule
@name = 'NightlyJobs',
@enabled = 0,
@owner_login_name = 'terrid' ;
GO
Vea también