Erstellen eines ActiveX-Skriptauftragsschritts

Gilt für: SQL Server

Das ActiveX-Subsystem wird ab SQL Server 2016 nicht mehr unterstützt. Konvertieren Sie alle vorhandenen Auftragsschritte, die ActiveX-Skripts verwenden, in PowerShell-Skriptauftragsschritte. Verwenden Sie in Zukunft PowerShell für die Entwicklung.

Wichtig

In Azure SQL Managed Instance werden derzeit die meisten, aber nicht alle, SQL Server-Agent-Features unterstützt. Details hierzu finden Sie unter Unterschiede bei T-SQL zwischen SQL Server und Azure SQL Managed Instance.

In diesem Thema wird beschrieben, wie Sie in SQL Server 2014 und früher einen Auftragsschritt für den Microsoft SQL Server-Agent erstellen und definieren, der ein ActiveX-Skript mithilfe von SQL Server Management Studio, Transact-SQL oder SQL Server Management Objects ausführt.

Voraussetzungen

Einschränkungen

Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Sicherheit

Ausführliche Informationen finden Sie unter Implementieren der SQL Server-Agent-Sicherheit.

Verwenden Sie SQL Server Management Studio

So erstellen Sie einen ActiveX-Skript-Auftragsschritt

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von SQL Server-Datenbank-Engineher, und erweitern Sie dann 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. Weitere Informationen zum Erstellen eines Auftrags finden Sie unter Erstellen von Aufträgen.

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

  4. Geben Sie im Dialogfeld Neuer Auftragsschritt unter Schrittnameeinen Schrittnamen für den Auftrag ein.

  5. Klicken Sie in der Liste Typ auf ActiveX-Skript.

  6. Wählen Sie in der Liste Ausführen als das Proxykonto mit den Anmeldeinformationen für den Auftrag aus.

  7. Wählen Sie die Sprache aus, in der das Skript geschrieben wurde. Klicken Sie alternativ auf Andere, und geben Sie dann den Namen der Microsoft ActiveX-Skriptsprache ein, in der das Skript geschrieben wird.

  8. Geben Sie im Feld Befehl die Skriptsyntax ein, die für den Auftragsschritt ausgeführt wird. Klicken Sie alternativ auf Öffnen , und wählen Sie eine Datei aus, die die Skriptsyntax enthält.

  9. Klicken Sie auf die Seite Erweitert , um die folgenden Optionen für den Auftragsschritt festzulegen: welche Aktion bei der erfolgreichen oder fehlerhaften Ausführung des Auftragsschrittes jeweils auszuführen ist, wie oft der SQL Server -Agent versuchen soll, den Auftragsschritt auszuführen, und wie viele Wiederholungsversuche unternommen werden sollen.

Verwenden von Transact-SQL

So erstellen Sie einen ActiveX-Skriptauftragsschritt

  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.

    -- create an ActiveX Script job step written in VBScript that creates a restore point  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Create a restore point',  
        @subsystem = N'ACTIVESCRIPTING',  
        @command = N'Const RESTORE_POINT = 20  
    
    strComputer = "."  
    Set objWMIService = GetObject("winmgmts:" _  
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\default")  
    
    Set objItem = objWMIService.Get("SystemRestore")  
    errResults = objItem.Restore(RESTORE_POINT)',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    

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

Verwendung von SQL Server Management Objects

So erstellen Sie einen ActiveX-Skript-Auftragsschritt

Verwenden Sie die JobStep -Klasse indem Sie eine von Ihnen ausgewählte Programmiersprache, z. B. Visual Basic, Visual C# oder PowerShell verwenden.