ジョブのスケジュール設定

このトピックでは、SQL Server エージェント ジョブのスケジュールを設定する方法について説明します。

  • 作業を開始する準備:

    セキュリティ

  • ジョブのスケジュールを設定する方法:

    SQL Server Management Studio

    Transact-SQL

    SQL Server 管理オブジェクト

作業を開始する準備

セキュリティ

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

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

SQL Server Management Studio の使用

スケジュールを作成してジョブにアタッチするには

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

  2. [SQL Server エージェント][ジョブ] の順に展開し、スケジュールを設定するジョブを右クリックします。次に、[プロパティ] をクリックします。

  3. [スケジュール] ページをクリックし、[新規作成] をクリックします。

  4. [名前] ボックスに新しいスケジュールの名前を入力します。

  5. スケジュールを作成してもすぐに有効にしない場合は、[有効] チェック ボックスをオフにします。

  6. [スケジュールの種類] ボックスの一覧で、次のいずれかを選択します。

    • [SQL Server エージェントの開始時に自動的に開始]。SQL Server エージェント サービスが開始されたときにジョブを開始します。

    • [CPU がアイドル状態になったときに開始]。CPU がアイドル状態になったときにジョブを開始します。

    • [定期的]。スケジュールを繰り返し実行します。 定期的なスケジュールを設定するには、ダイアログ ボックス上の [頻度][一日のうちの頻度]、および [実行時間] のグループに値を指定します。

    • [指定日時]。スケジュールを 1 回のみ実行します。 指定日時のスケジュールを設定するには、ダイアログ ボックス上の [指定日時に発生] グループに値を指定します。

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

ジョブにスケジュールをアタッチするには

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

  2. [SQL Server エージェント][ジョブ] の順に展開し、スケジュールを設定するジョブを右クリックして、[プロパティ] をクリックします。

  3. [スケジュール] ページをクリックし、[選択] をクリックします。

  4. アタッチするスケジュールを選択して、[OK] をクリックします。

  5. [ジョブのプロパティ] ダイアログ ボックスで、アタッチされたスケジュールをダブルクリックします。

  6. [開始日] が正しく設定されていることを確認します。 正しく設定されていない場合は、スケジュールの開始日を設定し、[OK] をクリックします。

  7. [ジョブのプロパティ] ダイアログ ボックスで、[OK] をクリックします。

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

Transact-SQL の使用

ジョブのスケジュールを設定するには

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

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

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

    USE msdb ;
    GO
    -- creates a schedule named NightlyJobs. 
    -- Jobs that use this schedule execute every day when the time on the server is 01:00. 
    EXEC sp_add_schedule
        @schedule_name = N'NightlyJobs' ,
        @freq_type = 4,
        @freq_interval = 1,
        @active_start_time = 010000 ;
    GO
    -- attaches the schedule to the job BackupDatabase
    EXEC sp_attach_schedule
       @job_name = N'BackupDatabase',
       @schedule_name = N'NightlyJobs' ;
    GO
    

詳細については、「sp_add_schedule (Transact-SQL)」および「sp_attach_schedule (Transact-SQL)」を参照してください。

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

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

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

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