Freigeben über


Erstellen eines Transact-SQL-Auftragsschritts

Gilt für:SQL ServerAzure SQL Managed Instance

Von Bedeutung

In azure SQL Managed Instancewerden die meisten, aber nicht alle SQL Server-Agent-Features derzeit unterstützt. Weitere Informationen finden Sie unter T-SQL-Unterschiede zwischen Azure SQL Managed Instance T-SQL und SQL Server oder SQL Agent-Jobbeschränkungen in SQL Managed Instance.

In diesem Thema wird beschrieben, wie Sie einen Microsoft SQL Server Agent Auftragsschritt erstellen, der Transact-SQL-Skripte in SQL Server unter Verwendung von SQL Server Management Studio, Transact-SQL oder SQL Server Management Objects ausführt.

Diese Auftragsschrittskripts können gespeicherte Prozeduren und erweiterte gespeicherte Prozeduren aufrufen. Ein einzelner TransactSQL-Auftragsschritt kann mehrere Batches und eingebettete GO-Befehle enthalten. Weitere Informationen zum Erstellen eines Auftrags finden Sie unter Erstellen von Aufträgen.

Bevor Sie beginnen

Sicherheit

Ausführliche Informationen finden Sie unter Implementieren von SQL Server Agent Security.

Verwendung von SQL Server Management Studio

So erstellen Sie einen Transact-SQL-Auftragsschritt

  1. Im Objekt-Explorer stellen Sie eine Verbindung zu einer Instanz der SQL Server-Datenbank-Engine her, und dann erweitern Sie diese Instanz.

  2. Erweitern Sie SQL Server Agent, erstellen Sie einen neuen Auftrag, oder klicken Sie mit der rechten Maustaste auf einen vorhandenen Auftrag, und klicken Sie dann auf Eigenschaften.

  3. Klicken Sie im Dialogfeld Auftragseigenschaften auf die Seite Schritte und dann auf Neu.

  4. Geben Sie im Dialogfeld Neuen Auftragsschritt einen Schrittnamen für den Auftrag ein.

  5. Klicken Sie in der Liste Typ auf Transact-SQL-Skript (TSQL).

  6. Geben Sie im Feld Befehl die TransactSQL -Befehlsbatches ein, oder klicken Sie auf Öffnen, um eine TransactSQL -Datei auszuwählen, die als Befehl verwendet werden soll.

  7. Klicken Sie auf Analysieren , um die Syntax zu überprüfen.

  8. Wenn die Syntax richtig ist, wird die Meldung "Analyse erfolgreich" angezeigt. Wenn ein Fehler gefunden wird, müssen Sie die Syntax korrigieren, bevor Sie den Vorgang fortsetzen.

  9. Klicken Sie auf die Seite Erweitert , um Optionen für Auftragsschritte festzulegen, z. B. welche Aktion ausgeführt werden soll, wenn ein Auftragsschritt erfolgreich ausgeführt wird oder einen Fehler erzeugt, wie häufig der SQL Server -Agent versuchen soll, den Auftragsschritt auszuführen, und in welche Datei oder Tabelle der SQL Server -Agent die Auftragsschrittausgabe schreiben soll. Nur Mitglieder der festen Serverrolle sysadmin können die Auftragsschrittausgabe in eine Betriebssystemdatei schreiben. Alle Benutzer des SQL Server-Agents können die Ausgabe in einer Tabelle protokollieren.

  10. Wenn Sie Mitglied der sysadmin festen Serverrolle sind und diesen Auftragsschritt mit einem anderen SQL-Login ausführen möchten, wählen Sie die SQL-Anmeldung aus der Liste "Als Benutzer Ausführen" aus.

Verwenden von Transact-SQL

So erstellen Sie einen Transact-SQL-Auftragsschritt

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    -- creates a job step that uses Transact-SQL  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Set database to read only',  
        @subsystem = N'TSQL',  
        @command = N'ALTER DATABASE SALES SET READ_ONLY',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    

Weitere Informationen finden Sie unter sp_add_jobstep (Transact-SQL).

Verwenden von SQL Server-Verwaltungsobjekten

So erstellen Sie einen Transact-SQL-Auftragsschritt

Verwenden Sie die JobStep Klasse mithilfe einer von Ihnen ausgewählten Programmiersprache, z. B. Visual Basic, Visual C# oder PowerShell.