Create a Transact-SQL Job Step
適用対象: SQL Server Azure SQL Managed Instance
重要
現在、Azure SQL Managed Instance によって、すべてではありませんが、ほとんどの SQL Server エージェントの機能がサポートされています。 詳細については、Azure SQL Managed Instance と SQL Server の T-SQL の相違点に関するページを参照してください。
このトピックでは、SQL Server Management Studio、Transact-SQL、または SQL Server 管理オブジェクトを使用して、SQL Server で Transact-SQL スクリプトを実行する Microsoft SQL Server エージェント ジョブ ステップを作成する方法について説明します。
ここで作成するジョブ ステップ スクリプトは、ストアド プロシージャおよび拡張ストアド プロシージャを呼び出すことができます。 1 つの Transact-SQL ジョブ ステップに、複数のバッチおよび埋め込み GO コマンドを含めることができます。 ジョブの作成の詳細については、「 ジョブの作成」を参照してください。
はじめに
セキュリティ
詳細については、「 SQL Server エージェントのセキュリティの実装」をご覧ください。
SQL Server Management Studio を使用する
Transact-SQL ジョブ テップを作成するには
オブジェクト エクスプローラー で、 SQL Server データベース エンジンのインスタンスに接続し、そのインスタンスを展開します。
[SQL Server エージェント] を展開し、新しいジョブを作成するか、既存のジョブを右クリックして [プロパティ] をクリックします。
[ジョブのプロパティ] ダイアログで [ステップ] ページをクリックし、 [新規作成] をクリックします。
[新しいジョブ ステップ] ダイアログの [ステップ名] ボックスにジョブ ステップ名を入力します。
[種類] ボックスの [Transact-SQL スクリプト (T-SQL)]をクリックします。
[コマンド] ボックスに、Transact-SQL コマンド バッチを入力するか、または [開く] をクリックしてコマンドとして使用する Transact-SQL ファイルを選択します。
[解析] をクリックして構文をチェックします。
構文が正しい場合は、成功を示すメッセージが表示されます。 エラーが見つかった場合は、構文を訂正しないと先に進めません。
[詳細設定] ページをクリックして、ジョブ ステップが成功または失敗した場合の操作、 SQL Server エージェントによるジョブ ステップ実行の試行回数、 SQL Server エージェントでジョブ ステップの出力を書き込むファイルまたはテーブルなど、ジョブ ステップのオプションを設定します。 sysadmin 固定サーバー ロールのメンバーだけが、オペレーティング システム ファイルにジョブ ステップの出力を書き込むことができます。 SQL Server エージェントのすべてのユーザーがテーブルにログを書き込むことができます。
sysadmin 固定サーバー ロールのメンバーで、このジョブ ステップを別の SQL ログインで実行する場合は、 [実行時のユーザー] ボックスで SQL ログインを選択します。
Transact-SQL の使用
Transact-SQL ジョブ テップを作成するには
オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。
-- 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
詳細については、「 sp_add_jobstep (Transact-SQL)」を参照してください。
SQL Server 管理オブジェクトの使用
Transact-SQL ジョブ テップを作成するには
Visual Basic、Visual C#、PowerShell などの選択したプログラミング言語で JobStep クラスを使用します。