neljapäev, 19. august 2010

Mitte iga pakkfaili op.süsteemi käsurea käsku ei saa SQL SERVER-i tööna jooksutada

Vaja näiteks andmebaasi tööna käima tõmmata pakkfail.
Seadistab SQL Server Agent-i alt töö ära Type = Operating System (CmdExec) ja tõmbab pakkfaili sisu Command aknasse sisse (asja mõte kustutada D:\TEMP kataloogist kõid PDF ja DOC failid)

d:
cd \temp
del *.pdf
del *.doc

aga töö jooksutamisel tuleb selline viga ette

The process could not be created for step 1 of job 0x... (reason: 5). The step failed.

Kui nüüd teha SQL Server Agent-ile proxy ja mandaat ja käivitada töö sobiva kasutaja õigusega saad ikka sama vea

Häda selles, et Server Agentile kõik käsurea asjad ka seeditavad pole, ehk

d:

mis muidu vahetab käsureal kettaseadet aga SQL Server Agentile kohe mitte ei meeldi ja veateadet pillubki

Lahendus 1 (kustuta otse kataloogi nime ette andes)
del d:\temp\*.pdf
del d:\temp\*.doc


Lahendus 2 (tee kettaseadme vahetus cd käsuga)
cd d:
cd \temp
del *.pdf
del *.doc