sp_update_schedule (Transact-SQL)
S’applique à :SQL Server
Modifie les paramètres d’une planification SQL Server Agent.
Conventions de la syntaxe Transact-SQL
Syntaxe
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 ]
Arguments
[ @schedule_id = ] schedule_id
Identificateur de la planification à modifier. schedule_id est int, sans valeur par défaut. Vous devez spécifier schedule_id ou schedule_name .
[ @name = ] 'schedule_name'
Nom de la planification à modifier. schedule_name est sysname, sans valeur par défaut. Vous devez spécifier schedule_id ou schedule_name .
[ @new_name = ] new_name
Nouveau nom de la planification. new_name est sysname, avec la valeur null par défaut. Lorsque new_name a la valeur NULL, le nom de la planification est inchangé.
[ @enabled = ] enabled
Indique l’état actuel de la planification. enabled est tinyint, avec une valeur par défaut de 1 (activé). Si la valeur est 0, la planification n’est pas activée. Si la planification n'est pas activée, aucun travail n'est exécuté dans cette dernière.
[ @freq_type = ] freq_type
Valeur indiquant quand un travail doit être exécuté. freq_type est int, avec une valeur par défaut de 0, et peut être l’une de ces valeurs.
Valeur | Description |
---|---|
1 | Une fois |
4 | Quotidien |
8 | Chaque semaine |
16 | Mensuelle |
32 | Mensuel, par rapport à l’intervalle freq |
64 | Lancé au démarrage du service SQLServerAgent |
128 | Exécution pendant une période d'inactivité de l'ordinateur. |
[ @freq_interval = ] freq_interval
Jours d’exécution d’un travail. freq_interval est int, avec une valeur par défaut de 0, et dépend de la valeur de freq_type.
Valeur de freq_type | Effet sur freq_interval |
---|---|
1 (une fois) | freq_interval n’est pas utilisé. |
4 (par jour) | Tous les freq_interval jours. |
8 (hebdomadaire) | freq_interval est un ou plusieurs des éléments suivants (combinés à un opérateur logique OR ) : 1 = Dimanche 2 = Lundi 4 = Mardi 8 = Mercredi 16 = jeudi 32 = vendredi 64 = samedi |
16 (mensuel) | Le freq_interval jour du mois. |
32 (mensuel relatif) | freq_interval est l’un des éléments suivants : 1 = Dimanche 2 = Lundi 3 = Mardi 4 = Mercredi 5 = jeudi 6 = vendredi 7 = samedi 8 = Jour 9 = Jour de la semaine 10 = Jour du week-end |
64 (quand le service SQLServerAgent démarre) | freq_interval n’est pas utilisé. |
128 | freq_interval n’est pas utilisé. |
[ @freq_subday_type = ] freq_subday_type
Spécifie les unités pour freq_subday_interval*.* freq_subday_typeest int, avec la valeur par défaut 0, et peut être l’une de ces valeurs.
Valeur | Description (unité) |
---|---|
0x1 | À une heure spécifiée |
0x2 | Secondes |
0x4 | Minutes |
0x8 | Heures |
[ @freq_subday_interval = ] freq_subday_interval
Nombre de freq_subday_type périodes à effectuer entre chaque exécution d’un travail. freq_subday_intervalest int, avec la valeur par défaut 0.
[ @freq_relative_interval = ] freq_relative_interval
L’occurrence d’un travail de freq_interval chaque mois, si freq_interval est de 32 (relative mensuelle). freq_relative_intervalest int, avec une valeur par défaut de 0, et peut être l’une de ces valeurs.
Valeur | Description (unité) |
---|---|
1 | First |
2 | Second |
4 | Third |
8 | Quatrième |
16 | Dernier |
[ @freq_recurrence_factor = ] freq_recurrence_factor
Nombre de semaines ou de mois entre l’exécution planifiée d’un travail. freq_recurrence_factor est utilisé uniquement si freq_type est 8, 16 ou 32. freq_recurrence_factorest int, avec la valeur par défaut 0.
[ @active_start_date = ] active_start_date
Date à laquelle l’exécution d’un travail peut commencer. active_start_dateest int, avec la valeur par défaut NULL, qui indique la date du jour. La date est au format AAAAMMJJ. Si active_start_date n’est pas NULL, la date doit être supérieure ou égale à 19900101.
Après avoir créé la planification, examinez la date de début et assurez-vous qu'elle est correcte. Pour plus d’informations, consultez la section « Date de début de la planification » dans Créer et attacher des planifications à des travaux.
[ @active_end_date = ] active_end_date
Date à laquelle l’exécution d’un travail peut s’arrêter. active_end_dateest int, avec la valeur par défaut 99991231, qui indique le 31 décembre 9999. La mise en forme est la suivante : AAAAMMJJ.
[ @active_start_time = ] active_start_time
Heure de n’importe quel jour entre active_start_date et active_end_date pour commencer l’exécution d’un travail. active_start_timeest int, avec une valeur par défaut de 000000, qui indique 12:00:00 sur une horloge de 24 heures, et doit être entré au format HHMMSS.
[ @active_end_time = ] active_end_time
Le temps de n’importe quel jour entre active_start_date et active_end_date pour mettre fin à l’exécution d’un travail. active_end_timeest int, avec la valeur par défaut 235959, qui indique 23:59:59 sur une horloge de 24 heures, et doit être entré au format HHMMSS.
[ @owner_login_name = ] 'owner_login_name']
Nom du principal de serveur propriétaire de la planification. owner_login_name est sysname, avec la valeur par défaut NULL, ce qui indique que la planification appartient au créateur.
[ @automatic_post = ] automatic_post
Réservés au.
Codet de retour
0 (réussite) ou 1 (échec)
Remarques
Tous les travaux qui utilisent la planification utilisent immédiatement les nouveaux paramètres. Cependant, la modification d'une planification n'entraîne pas l'arrêt des travaux en cours d'exécution.
Autorisations
Par défaut, les membres du rôle serveur fixe sysadmin peuvent exécuter cette procédure stockée. Les autres utilisateurs doivent disposer de l'un des rôles de base de données fixes suivants de SQL Server Agent dans la base de données msdb :
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Pour en savoir plus sur les autorisations de ces rôles, consultez Rôles de base de données fixes de l'Agent SQL Server.
Seuls les membres de sysadmin peuvent modifier une planification appartenant à un autre utilisateur.
Exemples
L'exemple suivant montre comment changer l'état activé de la planification NightlyJobs
en 0
et comment définir le propriétaire à terrid
.
USE msdb ;
GO
EXEC dbo.sp_update_schedule
@name = 'NightlyJobs',
@enabled = 0,
@owner_login_name = 'terrid' ;
GO
Voir aussi
Créer des planifications et les attacher à des travaux
Planifier un travail
Créer une planification
Procédures stockées de l'Agent SQL Server (Transact-SQL)
sp_add_schedule (Transact-SQL)
sp_add_jobschedule (Transact-SQL)
sp_delete_schedule (Transact-SQL)
sp_help_schedule (Transact-SQL)
sp_attach_schedule (Transact-SQL)