共用方式為


創建 ActiveX 腳本的作業步驟

適用於:SQL Server

從 SQL Server 2016 開始,ActiveX 子系統已停止。 將任何使用 ActiveX 腳本的現有作業步驟轉換為 PowerShell 腳本作業步驟,。 使用 PowerShell 進行任何未來的開發。

重要

Azure SQL 受控實例上,目前支援大部分但並非所有 SQL Server Agent 功能。 如需詳細資訊,請參閱 SQL Server 中的 Azure SQL 受控實例。

本主題描述如何在 SQL Server 2014 及更早版本中,使用 SQL Server Management Studio、Transact-SQL 或 SQL Server 管理物件,建立及定義執行 ActiveX 腳本的 Microsoft SQL Server Agent 作業步驟。

開始之前

限制與約束

這項功能將會在未來的 SQL Server 版本中移除。 請避免在新的開發工作中使用此功能,並計劃修改目前使用此功能的應用程式。

安全

如需詳細資訊,請參閱 實施 SQL Server Agent 安全性

使用 SQL Server Management Studio

若要建立 ActiveX 腳本作業步驟

  1. 在 [物件總管] 連接到 SQL Server Database Engine 的實例,然後展開該實例。

  2. 展開 SQL Server Agent,建立新的作業或以滑鼠右鍵點一下現有的作業,然後按一下 [屬性]。 如需建立作業的詳細資訊,請參閱建立作業

  3. 在 [作業屬性] 對話框中,按兩下 [步驟] 頁面,然後按兩下 [[新增]

  4. 在 [新增作業步驟] 對話框中,輸入作業 步驟名稱

  5. 在 [類型] 列表中,單擊 [ActiveX Script]

  6. 在 [執行身分 列表中,選取具有作業將使用認證的 Proxy 帳戶。

  7. 選擇撰寫的腳本 語言。 或者,按兩下 [[其他],然後輸入將用來撰寫腳本的 Microsoft ActiveX 腳本語言名稱。

  8. 在 [命令] 方塊中,輸入將針對作業步驟執行的腳本語法。 或者,點選 開啟,然後選取包含腳本語法的檔案。

  9. 按兩下 [進階] 頁面來設定下列作業步驟選項:如果作業步驟成功或失敗,SQL Server Agent 應該嘗試執行作業步驟的次數,以及重試嘗試的頻率為何。

使用 Transact-SQL

若要建立 ActiveX 腳本作業步驟

  1. 對象總管中,連接到Database Engine的實例。

  2. 在 [標準] 列上,按一下 [新增查詢]。

  3. 將下列範例複製並貼到查詢視窗中,然後按下 [執行]

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

如需詳細資訊,請參閱 sp_add_jobstep (Transact-SQL)

使用 SQL Server 管理物件

若要建立ActiveX腳本作業步驟

使用您選擇的程式設計語言,例如 Visual Basic、Visual C# 或 PowerShell,使用 JobStep 類別。