web-development-kb-eu.site

Wie führe ich eine Batchdatei von einem geplanten Job über den SQL Server-Agenten aus?

Ich versuche, eine (Windows-) Batchdatei in einem SQL Server-Agentenjob unter SQL Server 2008 R2 auszuführen. In den Jobschritten habe ich einen neuen Schritt erstellt und dessen Typ auf "Betriebssystem (CmdExec)" gesetzt. Ich habe zunächst versucht, nur den Batch-Dateinamen in das Feld "Befehl" einzufügen. Es gibt einen Fehler, dass die Datei nicht gefunden werden kann.

Dann habe ich versucht: cmd.exe c:\test.bat

Dies beginnt, endet aber nie (und es sieht sowieso nicht so aus, als würde es tatsächlich funktionieren).

Ich habe versucht, den Namen der Batch-Datei in Anführungszeichen zu setzen: cmd.exe "C:\test.bat", aber das macht auch keinen Unterschied.

Was ist die magische Kombination, um dies zum Laufen zu bringen?

12
Paul Mrozowski

Wenn das Gedächtnis mir richtig dient:

cmd.exe /c "c:\test.bat"

Anführungszeichen sind erforderlich, wenn der Pfad oder Dateiname Leerzeichen enthält

11
SqlACID

Überprüfen Sie auch die für den Job Agent-Dienst verwendeten Berechtigungen. Möglicherweise hat der Benutzer, der den Dienst ausführt, keine Berechtigung zum Anzeigen der Datei.

Viel Glück

1
Dan OBrien

nur "c:\test.bat" erledigt den Job

0
Ronald Tims

Überprüfen Sie, ob Sie über Berechtigungen zum Ausführen der Batchdatei auf diesem Laufwerk und Ordner verfügen.

Vergessen Sie nicht, wenn Sie es manuell ausführen, werden Ihre Anmeldeinformationen verwendet, aber wenn es automatisch von SQL Agent ausgeführt wird, werden die Anmeldeinformationen und Berechtigungen des Agenten verwendet.

0
Phill H