sql >> Databasteknik >  >> RDS >> Sqlserver

Få SQL Server Job Status

Inte så svårt. Tänk på att SQL Server håller metadatainformation hela tiden om vilken detalj som aktivt görs på servern. Jag skulle göra detta för att hitta fel i att du kan skapa en proc eller funktion, kalla det efter datumintervall. Jag gav ett exempel på just frågan för tillfället:

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. mysqli_connect till fjärrserver

  2. på ms-sql-server, vilket är det bästa verktyget för att få alla beroenden mellan alla objekt?

  3. snabb synkroniseringsdata av kärndata en mysql-databas

  4. Hur ställer jag in applikationsnamn i en Postgresql JDBC-url?