Share via


Transact-SQL ジョブ テップの作成

このトピックでは、SQL Server Management Studio、Transact-SQL、または SQL Server 管理オブジェクトを使用して、SQL Server 2012 で Transact-SQL スクリプトを実行する Microsoft SQL Server エージェント ジョブ ステップを作成する方法について説明します。

ここで作成するジョブ ステップ スクリプトは、ストアド プロシージャおよび拡張ストアド プロシージャを呼び出すことができます。 1 つの Transact-SQL ジョブ ステップに、複数のバッチおよび埋め込み GO コマンドを含めることができます。 ジョブの作成の詳細については、「ジョブの作成」を参照してください。

このトピックの内容

  • 作業を開始する準備: 

    セキュリティ

  • Transact-SQL ジョブ ステップを作成する方法:

    SQL Server Management Studio

    Transact-SQL

    SQL Server 管理オブジェクト

作業を開始する準備

セキュリティ

詳細については、「SQL Server エージェントのセキュリティの実装」を参照してください。

[トップに戻る] リンクで使用される矢印アイコン[Top]

SQL Server Management Studio の使用

Transact-SQL ジョブ テップを作成するには

  1. オブジェクト エクスプローラーで、SQL Server データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。

  2. [SQL Server エージェント] を展開し、新しいジョブを作成するか、既存のジョブを右クリックして [プロパティ] をクリックします。

  3. [ジョブのプロパティ] ダイアログで [ステップ] ページをクリックし、[新規作成] をクリックします。

  4. [新しいジョブ ステップ] ダイアログの [ステップ名] ボックスにジョブ ステップ名を入力します。

  5. [種類] ボックスの [Transact-SQL スクリプト (T-SQL)] をクリックします。

  6. [コマンド] ボックスに、Transact-SQL コマンド バッチを入力するか、または [開く] をクリックしてコマンドとして使用する Transact-SQL ファイルを選択します。

  7. [解析] をクリックして構文をチェックします。

  8. 構文が正しい場合は、成功を示すメッセージが表示されます。 エラーが見つかった場合は、構文を訂正しないと先に進めません。

  9. [詳細設定] ページをクリックして、ジョブ ステップが成功または失敗した場合の操作、SQL Server エージェントによるジョブ ステップ実行の試行回数、SQL Server エージェントでジョブ ステップの出力を書き込むファイルまたはテーブルなど、ジョブ ステップのオプションを設定します。 sysadmin 固定サーバー ロールのメンバーだけが、オペレーティング システム ファイルにジョブ ステップの出力を書き込むことができます。 SQL Server エージェントのすべてのユーザーがテーブルにログを書き込むことができます。

  10. sysadmin 固定サーバー ロールのメンバーで、このジョブ ステップを別の SQL ログインで実行する場合は、[実行時のユーザー] ボックスで SQL ログインを選択します。

[トップに戻る] リンクで使用される矢印アイコン[先頭に戻る][先頭に戻る]

Transact-SQL の使用

Transact-SQL ジョブ テップを作成するには

  1. オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続します。

  2. [標準] ツール バーの [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] をクリックします。

    -- creates a job step that 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
    

詳細については、「sp_add_jobstep (Transact-SQL)」を参照してください。

[トップに戻る] リンクで使用される矢印アイコン[Top]

SQL Server 管理オブジェクトの使用

Transact-SQL ジョブ テップを作成するには

Visual Basic、Visual C#、PowerShell などのプログラミング言語で JobStep クラスを使用します。 詳細については、「SQL Server 管理オブジェクト (SMO)」を参照してください。

[トップに戻る] リンクで使用される矢印アイコン[Top]