Create an ActiveX Script Job StepCreate an ActiveX Script Job Step

In questo argomento si descrive come creare e definire un passaggio del processo di MicrosoftMicrosoft SQL ServerSQL Server Agent in SQL Server 2017SQL Server 2017 in cui viene eseguito uno script ActiveX mediante SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQLo SQL Server Management Objects.This topic describes how to create and define a MicrosoftMicrosoft SQL ServerSQL Server Agent job step in SQL Server 2017SQL Server 2017 that executes an ActiveX script by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or SQL Server Management Objects.

Prima di iniziareBefore You Begin

Limitazioni e restrizioniLimitations and Restrictions

Questa funzionalità verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server.This feature will be removed in a future version of Microsoft SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

SecuritySecurity

Per informazioni dettagliate, vedere Implement SQL Server Agent Security.For detailed information, see Implement SQL Server Agent Security.

Utilizzo di SQL Server Management StudioUsing SQL Server Management Studio

Per creare un passaggio di processo Script ActiveXTo create an ActiveX Script job step

  1. In Esplora oggetti connettersi a un'istanza del Motore di database di SQL ServerSQL Server Database Engineed espandere tale istanza.In Object Explorer, connect to an instance of the Motore di database di SQL ServerSQL Server Database Engine, and then expand that instance.

  2. Espandere SQL Server Agent, creare un nuovo processo oppure fare clic con il pulsante destro del mouse su un processo esistente e quindi scegliere Proprietà.Expand SQL Server Agent, create a new job or right-click an existing job, and then click Properties. Per ulteriori informazioni sulla creazione di un processo, vedere Creazione di processi.For more information on creating a job, see Creating Jobs.

  3. Nella finestra di dialogo Proprietà processo fare clic sulla pagina Passaggi e quindi su Nuovo.In the Job Properties dialog, click the Steps page, and then click New.

  4. Nella finestra di dialogo Nuovo passaggio di processo digitare il nome del passaggio del processo nella casella Nome passaggio.In the New Job Step dialog, type a job Step name.

  5. Nell'elenco Tipo fare clic su Script ActiveX.In the Type list, click ActiveX Script.

  6. Nell'elenco Esegui come selezionare l'account proxy con le credenziali che verranno utilizzate dal processo.In the Run as list, select the proxy account with the credentials that the job will use.

  7. Nella casella Linguaggio selezionare il linguaggio in cui è stato scritto lo script.Select the Language in which the script was written. In alternativa, è possibile fare clic su Altro e quindi immettere il nome del linguaggio di scripting MicrosoftMicrosoft ActiveX in cui verrà scritto lo script.Alternatively, click Other and then enter the name of the MicrosoftMicrosoft ActiveX scripting language in which the script will be written.

  8. Nella casella Comando immettere la sintassi dello script che verrà eseguito per il passaggio di processo.In the Command box, enter the script syntax that will be executed for the job step. In alternativa, è possibile fare clic su Apri e selezionare un file contenente la sintassi dello script.Alternately, click Open and select a file containing the script syntax.

  9. Fare clic sulla pagina Avanzate per impostare le opzioni seguenti relative al passaggio di processo: l'azione da eseguire in caso di esito positivo o negativo del passaggio, il numero di tentativi di esecuzione del passaggio che devono essere effettuati da SQL ServerSQL Server Agent e gli intervalli tra tentativi successivi.Click the Advanced page to set the following job step options: what action to take if the job step succeeds or fails, how many times SQL ServerSQL Server Agent should try to execute the job step, and how often retry attempts should be made.

Utilizzo di Transact-SQLUsing Transact-SQL

Per creare un passaggio di processo Script ActiveXTo create an ActiveX Script job step

  1. In Esplora oggetticonnettersi a un'istanza del Motore di databaseDatabase Engine.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine.

  2. Sulla barra Standard fare clic su Nuova query.On the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute.

    -- 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  
    

Per altre informazioni, vedere sp_add_jobstep (Transact-SQL).For more information, see sp_add_jobstep (Transact-SQL).

Utilizzo di SQL Server Management ObjectsUsing SQL Server Management Objects

Per creare un passaggio di processo Script ActiveXTo create an ActiveX Script job step

Usare la classe JobStep tramite un linguaggio di programmazione a scelta, ad esempio Visual Basic, Visual C# o PowerShell.Use the JobStep class by using a programming language that you choose, such as Visual Basic, Visual C#, or PowerShell.