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

SQL Server ジョブ ステータスの取得

    それほど難しくありません。 SQL Server は、サーバーに対してアクティブに行われている詳細について、常にメタ データ情報を保持していることに注意してください。プロシージャまたは関数を作成し、日付範囲で呼び出すことができるという点で、失敗を見つけるためにこれを行います。とりあえず、クエリの例を示しました:

    use msdb;
    
    declare
        @Start int =  cast( convert(varchar,  
                dateadd(ww, datediff(ww, 0, getdate())-1,0)  -- last week starting
                , 112) as int)
    ,   @End int = cast( convert(varchar,
                getdate()  -- current datetime
                , 112) as int)
    ;
    
    Select 
        j.name
    ,   j.description
    ,   cast( cast(jh.run_date as varchar) + ' ' +  left(jh.run_time, 2) + ':' + substring( cast(jh.run_time as varchar), 3, 2) as datetime) as TimeRan
    ,   jh.message
    ,   jh.step_id
    ,   jh.step_name
    from sysjobs j (nolock) 
        join sysjobhistory jh (nolock) on j.job_id = jh.job_id
            and jh.run_date between @Start and @End
            and jh.run_status = 0  -- 0 is failure
      

    1. ORA-01403データが見つかりませんエラー

    2. NULLを返すMySQLLOAD_FILE

    3. WorkbenchJ-エラー:GROUPBY句で集計を許可していません

    4. ダウンロードするもの:JDKまたはJRE?