Delen via


sp_update_schedule (Transact-SQL)

Van toepassing op:SQL Server

Verandert de instellingen voor een SQL Server Agent-schema.

Transact-SQL syntaxis-conventies

Syntaxis

sp_update_schedule
    [ [ @schedule_id = ] schedule_id ]
    [ , [ @name = ] N'name' ]
    [ , [ @new_name = ] N'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 = ] N'owner_login_name' ]
    [ , [ @automatic_post = ] automatic_post ]
[ ; ]

Arguments

[ @schedule_id = ] schedule_id

De identificatie van het schema dat aangepast moet worden. @schedule_id is int, met als standaard .NULL

Ofwel @schedule_id of @name moet worden gespecificeerd.

[ @name = ] Naamloos

De naam van het schema dat aangepast moet worden. @name is een systeemnaam, met als standaard .NULL

Ofwel @schedule_id of @name moet worden gespecificeerd.

[ @new_name = ] N'new_name'

De nieuwe naam voor het schema. @new_name is een systeemnaam, met als standaard .NULL Wanneer @new_name is NULL, blijft de naam van het schema ongewijzigd.

[ @enabled = ] ingeschakeld

Geeft de huidige status van het schema aan. @enabled is Tinyint, met standaard ( 1 ingeschakeld). Als 0, is het schema niet ingeschakeld. Wanneer het schema niet is ingeschakeld, worden er geen taken op dit schema uitgevoerd.

[ @freq_type = ] freq_type

Een waarde die aangeeft wanneer een taak moet worden uitgevoerd. @freq_type is int, en kan een van deze waarden zijn.

Waarde Description
1 Eenmaal
4 Dagelijks
8 Weekly
16 Monthly
32 Maandelijks, relatief tot @freq_interval
64 Voer uit wanneer de SQL Server Agent-service start
128 Start wanneer de computer inactief is

[ @freq_interval = ] freq_interval

De dagen waarop een klus wordt uitgevoerd. @freq_interval is int, met een standaard van 0, en hangt af van de waarde van @freq_type zoals aangegeven in de volgende tabel:

Waarde van @freq_type Effect op @freq_interval
1 (één keer) @freq_interval wordt niet gebruikt.
4 (dagelijks) Elke @freq_interval dagen.
8 (wekelijks) @freq_interval is een of meer van de volgende (gecombineerd met een logische OR operator):

1 = Zondag
2 = Maandag
4 = Dinsdag
8 = Woensdag
16 = Donderdag
32 = Vrijdag
64 = Zaterdag
16 (maandelijks) Op de @freq_interval dag van de maand.
32 (maandelijkse familielid) @freq_interval is een van de volgende:

1 = Zondag
2 = Maandag
3 = Dinsdag
4 = Woensdag
5 = Donderdag
6 = Vrijdag
7 = Zaterdag
8 = Dag
9 = Doordeweekse dag
10 = Weekenddag
64 (wanneer de SQL Server Agent-service start) @freq_interval wordt niet gebruikt.
128 @freq_interval wordt niet gebruikt.

[ @freq_subday_type = ] freq_subday_type

Specificeert de eenheden voor @freq_subday_interval. @freq_subday_type is int, en kan een van deze waarden zijn.

Waarde Beschrijving (eenheid)
1 Op het opgegeven tijdstip
2 Seconden
4 Notulen
8 Hours

[ @freq_subday_interval = ] freq_subday_interval

Het aantal @freq_subday_type periodes dat tussen elke uitvoering van een taak verloopt. @freq_subday_interval is int, met als standaard .0

[ @freq_relative_interval = ] freq_relative_interval

Verder definieert het @freq_interval wanneer @freq_type wordt ingesteld op 32 (maandelijkse relatieve).

@freq_relative_interval is int, en kan een van deze waarden zijn.

Waarde Beschrijving (eenheid)
1 First
2 Second
4 Derde
8 Vierde
16 Laatste

@freq_relative_interval geeft het voorkomen van het interval aan. Als bijvoorbeeld @freq_relative_interval is ingesteld op 2, @freq_type is ingesteld op 32, en @freq_interval is ingesteld op 3, zou de geplande taak plaatsvinden op de tweede dinsdag van elke maand.

[ @freq_recurrence_factor = ] freq_recurrence_factor

Het aantal weken of maanden tussen de geplande uitvoering van een taak. @freq_recurrence_factor is int, met als standaard .0 @freq_recurrence_factor wordt alleen gebruikt als @freq_type is ingesteld op 8, 16, of 32.

[ @active_start_date = ] active_start_date

De datum waarop de uitvoering van de taak kan beginnen. @active_start_date is int, met een standaard van NULL. De datum is opgemaakt als yyyyMMdd. Als @active_start_date is vastgesteld, moet de datum groter zijn dan of gelijk aan 19900101.

Nadat het rooster is gemaakt, bekijk je de startdatum en bevestig je dat het de juiste datum is. Voor meer informatie, zie de sectie "Scheduling Start Date" in Schedules maken en koppelen aan opdrachten.

[ @active_end_date = ] active_end_date

Datum waarop de uitvoering van een taak kan stoppen. @active_end_date is int, met als standaard .99991231 De datum is opgemaakt als yyyyMMdd.

[ @active_start_time = ] active_start_time

De tijd op elke dag tussen @active_start_date en @active_end_date om te beginnen met het uitvoeren van het werk. @active_start_time is int, met als standaard .000000 De tijd is opgemaakt als HHmmss een 24-uurs klok.

[ @active_end_time = ] active_end_time

De tijd op elke dag tussen active_start_date en @active_end_date om de uitvoering van het werk af te ronden. @active_end_time is int, met als standaard .235959 De tijd is opgemaakt als HHmmss een 24-uurs klok.

[ @owner_login_name = ] N'owner_login_name'

De naam van de server principal die eigenaar is van het schema. @owner_login_name is sysname, met standaard , NULLwat aangeeft dat het schema eigendom is van de maker.

[ @automatic_post = ] automatic_post

Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Opmerkingen

Alle taken die het schema gebruiken, gebruiken direct de nieuwe instellingen. Het wijzigen van een schema stopt echter niet met taken die op dat moment draaien.

Permissions

Je kunt rechten verlenen EXECUTE op deze procedure, maar deze rechten kunnen worden overschreven tijdens een SQL Server-upgrade.

Andere gebruikers moeten een van de volgende vaste SQL Server Agent-databaserollen in de msdb database krijgen:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Voor details over de rechten van deze rollen, zie SQL Server Agent Fixed Database Roles.

Alleen leden van de sysadmin kunnen een schema aanpassen dat eigendom is van een andere gebruiker.

Voorbeelden

Het volgende voorbeeld verandert de ingeschakelde status van het NightlyJobs schema naar 0 en zet de eigenaar op terrid.

USE msdb;
GO

EXECUTE dbo.sp_update_schedule
    @name = 'NightlyJobs',
    @enabled = 0,
    @owner_login_name = 'terrid';
GO