Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Felügyelt Azure SQL-példány
Módosítja az SQL Server Agent szolgáltatásban automatizált tevékenységek végrehajtására használt feladatok egyik lépésének beállítását.
Transact-SQL szintaxis konvenciói
Szintaxis
sp_update_jobstep
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
, [ @step_id = ] step_id
[ , [ @step_name = ] N'step_name' ]
[ , [ @subsystem = ] N'subsystem' ]
[ , [ @command = ] N'command' ]
[ , [ @additional_parameters = ] N'additional_parameters' ]
[ , [ @cmdexec_success_code = ] cmdexec_success_code ]
[ , [ @on_success_action = ] on_success_action ]
[ , [ @on_success_step_id = ] on_success_step_id ]
[ , [ @on_fail_action = ] on_fail_action ]
[ , [ @on_fail_step_id = ] on_fail_step_id ]
[ , [ @server = ] N'server' ]
[ , [ @database_name = ] N'database_name' ]
[ , [ @database_user_name = ] N'database_user_name' ]
[ , [ @retry_attempts = ] retry_attempts ]
[ , [ @retry_interval = ] retry_interval ]
[ , [ @os_run_priority = ] os_run_priority ]
[ , [ @output_file_name = ] N'output_file_name' ]
[ , [ @flags = ] flags ]
[ , [ @proxy_id = ] proxy_id ]
[ , [ @proxy_name = ] N'proxy_name' ]
[ ; ]
Érvek
[ @job_id = ] 'job_id'
Annak a feladatnak az azonosítószáma, amelyhez a lépés tartozik.
@job_iduniqueidentifier, alapértelmezett értéke NULL.
Meg kell adni @job_id vagy @job_name, de mindkettőt nem lehet megadni.
[ @job_name = ] N'job_name'
Annak a feladatnak a neve, amelyhez a lépés tartozik.
Meg kell adni @job_id vagy @job_name, de mindkettőt nem lehet megadni.
[ @step_id = ] step_id
A módosítani kívánt feladatlépés azonosítószáma. @step_id alapértelmezés nélkül int. Ez a szám nem módosítható.
[ @step_name = ] N'step_name'
A lépés új neve.
[ @subsystem = ] N'alrendszer"
Az SQL Server Agent által a @commandvégrehajtásához használt alrendszer.
@subsystemnvarchar(40), alapértelmezett értéke NULL.
[ @command = ] N'parancs'
A @subsystemkeresztül végrehajtandó parancsok.
@commandnvarchar(max), alapértelmezett értéke NULL.
[ @additional_parameters = ] N'additional_parameters'
Csak tájékoztatási célokra van meghatározva. Nem támogatott. A jövőbeli kompatibilitás nem garantált.
[ @cmdexec_success_code = ] cmdexec_success_code
Egy CmdExec alrendszerparancs által visszaadott érték, amely jelzi, hogy parancs sikeresen végrehajtotta.
@cmdexec_success_codeint, alapértelmezett értéke NULL.
[ @on_success_action = ] on_success_action
A lépés sikeres végrehajtása esetén végrehajtandó művelet.
@on_success_actionNULL, és ezek egyike lehet.
| Érték | Leírás (művelet) |
|---|---|
1 |
Kilépés sikerrel |
2 |
Kilépés hibával |
3 |
Ugrás a következő lépésre |
4 |
Ugrás a @on_success_step_id lépésre |
[ @on_success_step_id = ] on_success_step_id
A feladatban szereplő lépés azonosítószáma, ha a lépés sikeres, és @on_success_action4.
@on_success_step_idint, alapértelmezett értéke NULL.
[ @on_fail_action = ] on_fail_action
A lépés meghiúsulása esetén végrehajtandó művelet. @on_fail_actionapró, és ezek egyike is lehet.
| Érték | Leírás (művelet) |
|---|---|
1 |
Kilépés sikerrel |
2 |
Kilépés hibával |
3 |
Ugrás a következő lépésre |
4 |
Ugrás a @on_fail_step_id lépésre |
[ @on_fail_step_id = ] on_fail_step_id
A feladatban végrehajtandó lépés azonosítószáma, ha a lépés meghiúsul, és @on_fail_action4.
@on_fail_step_idint, alapértelmezett értéke NULL.
[ @server = ] N'kiszolgáló'
Csak tájékoztatási célokra van meghatározva. Nem támogatott. A jövőbeli kompatibilitás nem garantált.
[ @database_name = ] N'database_name'
Annak az adatbázisnak a neve, amelyben egy Transact-SQL lépést végre szeretne hajtani. []) lévő nevek nem engedélyezettek.
[ @database_user_name = ] N'database_user_name'
A Transact-SQL lépés végrehajtásakor használni kívánt adatbázis-felhasználó neve.
[ @retry_attempts = ] retry_attempts
Az újrapróbálkozási kísérletek száma, ha ez a lépés sikertelen.
@retry_attemptsint, alapértelmezett értéke NULL.
[ @retry_interval = ] retry_interval
Az újrapróbálkozási kísérletek közötti percek száma.
@retry_intervalint, alapértelmezett értéke NULL.
[ @os_run_priority = ] os_run_priority
Csak tájékoztatási célokra van meghatározva. Nem támogatott. A jövőbeli kompatibilitás nem garantált.
[ @output_file_name = ] N'output_file_name'
Annak a fájlnak a neve, amelyben a lépés kimenete mentésre kerül.
@output_file_namenvarchar(200), alapértelmezett értéke NULL. Ez a paraméter csak Transact-SQL vagy CmdExec alrendszerekben futó parancsokkal érvényes.
Ha @output_file_name vissza szeretné állítani NULL, @output_file_name üres sztringre vagy üres karaktersorozatra kell állítania, de nem használhatja a CHAR(32) függvényt.
Állítsa be például ezt az argumentumot üres sztringre az alábbiak szerint:
@output_file_name = ' '
[ @flags = ] jelzők
A viselkedést vezérlő beállítás.
@flagsint, alapértelmezett értéke NULL.
| Érték | Leírás | Megjegyzés |
|---|---|---|
0 (alapértelmezett) |
Kimeneti fájl felülírása | |
2 |
Hozzáfűzés a kimeneti fájlhoz | |
4 |
Transact-SQL feladatlépés kimenetének írása a lépéselőzményekbe | Alkalmazás típusra: Transact-SQL, Analysis Services Command és Analysis Query |
8 |
Napló írása a táblába (meglévő előzmények felülírása) | |
16 |
Napló írása táblába (meglévő előzmények hozzáfűzése) | |
32 |
SSIS/CmdExe/PowerShell-feladatlépés kimenetének írása lépéselőzményekhez | Alkalmazás a következő típusra: CmdExe, PowerShell és Integration Services-csomag |
[ @proxy_id = ] proxy_id
Annak a proxynak az azonosítószáma, amelyként a feladatlépés fut.
@proxy_idint, alapértelmezett értéke NULL. Ha nincs megadva @proxy_id, nincs megadva @proxy_name, és nincs megadva @database_user_name, a feladatlépés az SQL Server Agent szolgáltatásfiókjaként fut.
[ @proxy_name = ] N'proxy_name'
Annak a proxynak a neve, amelyként a feladatlépés fut.
@proxy_namesysname, alapértelmezett értéke NULL. Ha nincs megadva @proxy_id, nincs megadva @proxy_name, és nincs megadva @database_user_name, a feladatlépés az SQL Server Agent szolgáltatásfiókjaként fut.
Kódértékek visszaadása
0 (sikeres) vagy 1 (hiba).
Megjegyzések
sp_update_jobstep a msdb adatbázisból kell futtatni.
A feladatlépések frissítése növeli a feladat verziószámát.
Ez a tárolt eljárás megosztja a
Engedélyek
Ehhez az eljáráshoz EXECUTE engedélyeket adhat meg, de előfordulhat, hogy ezek az engedélyek felül lesznek bírálva egy SQL Server-frissítés során.
A többi felhasználónak az alábbi SQL Server Agent rögzített adatbázis-szerepkörök egyikét kell biztosítani a msdb adatbázisban:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
A szerepkörök engedélyeivel kapcsolatos részletekért lásd SQL Server-ügynök rögzített adatbázis-szerepköreit.
Csak a sysadmin tagjai frissíthetik egy másik felhasználó által birtokolt feladat feladatlépését.
Ha a feladatlépés proxyhoz való hozzáférést igényel, a feladatlépés létrehozójának hozzáféréssel kell rendelkeznie a feladatlépés proxyhoz. A Transact-SQL kivételével minden alrendszerhez proxyfiók szükséges. A sysadmin tagjai minden proxyhoz hozzáférnek, és használhatják az SQL Server Agent szolgáltatásfiókot a proxyhoz.
Példák
Az alábbi példa a Weekly Sales Data Backup feladat első lépéséhez tartozó újrapróbálkozási kísérletek számát módosítja. A példa futtatása után az újrapróbálkozási kísérletek száma 10.
USE msdb;
GO
EXECUTE dbo.sp_update_jobstep
@job_name = N'Weekly Sales Data Backup',
@step_id = 1,
@retry_attempts = 10;
GO