sql >> データベース >  >> RDS >> Sqlserver

SQL テーブルに記載されている SQL Server エージェント ジョブを実行する方法

    a) 適切な frequency で proc のリストを実行する proc を作成します 値、それらを実行し、lastrun を更新します 桁。

    <オール>
  1. 議論する @frequency その中で、それを外に渡します。
  2. この引数で proc リストをフィルタリングします
  3. この「頻度」でプロシージャのリストをループし、プロシージャを実行します
  4. alter proc dbo.RunProcs
      @Frequency varchar(50)
    as
    begin
      declare @crProcs cursor 
    
      set @crProcs = cursor fast_forward for
      select m.ProcName
      from dbo.Maintainance m
      where m.Frequency = @Frequency
      order by 1
    
      ...
      while @@fetch_status = 0
      beign
          begin try
            exec @ProcName
            ...
            update -> succeded
            ...
          end try
          begin catch
            ...
            update -> failed
            ...
          end catch
        fetch ...
      end
    
      return 1
    end
    

    b) このプロセスを実行するスケジュールされたジョブを作成します

    <オール> <リ>

    ジョブ "DAILY PROCS" を作成します 、このジョブにスケジュールを割り当てて、毎日実行してください。

    T-SQL でジョブ ステップを追加します:exec dbo.RunProcs @Frequency = 'day'

    <リ>

    ジョブ 「WEEKLY PROCS」 を作成します 、毎週実行するようにこのジョブにスケジュールを割り当てます

    T-SQL でジョブ ステップを追加します:exec dbo.RunProcs @Frequency = 'week'

    <リ>

    ジョブ 「MONTHLY PROCS」 を作成します 、このジョブにスケジュールを割り当てて、毎月実行する

    T-SQL でジョブ ステップを追加します:exec dbo.RunProcs @Frequency = 'month'




    1. SQLServer2012のプロセッサの選択

    2. ワードラップは数字もラップさせません

    3. 追加するラジオボタンの値

    4. ユーザー テーブルの管理者パスワードをハッシュするにはどうすればよいですか?