{"id":1929,"date":"2012-02-08T07:01:05","date_gmt":"2012-02-08T07:01:05","guid":{"rendered":"http:\/\/enjoyasp.net\/?p=1929"},"modified":"2012-11-19T10:19:26","modified_gmt":"2012-11-19T10:19:26","slug":"%e5%a4%9a%e6%9c%8d%e5%8a%a1%e5%99%a8mssql-job%e8%bf%90%e8%a1%8c%e7%9b%91%e6%8e%a7","status":"publish","type":"post","link":"https:\/\/enjoyasp.net\/index.php\/2012\/02\/08\/%e5%a4%9a%e6%9c%8d%e5%8a%a1%e5%99%a8mssql-job%e8%bf%90%e8%a1%8c%e7%9b%91%e6%8e%a7\/","title":{"rendered":"\u591a\u670d\u52a1\u5668mssql job\u8fd0\u884c\u76d1\u63a7"},"content":{"rendered":"<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t\u5229\u7528\uff1a1\uff0cmssql job\u8fd0\u884c\u30022\uff0c\u94fe\u63a5\u670d\u52a1\u5668\uff0c3\uff0cmssql \u90ae\u4ef6\u53d1\u9001<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t\u4f8b\uff1a<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tDECLARE @LastRun VARCHAR(10)<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSELECT @SyncDate = SyncDate FROM dbo.SyncTable<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tWHERE TableName = &lsquo;JobLogMonitor&rsquo;<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tIF @@ROWCOUNT = 0 BEGIN RETURN END<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\tSET @LastRun = CONVERT(VARCHAR(10),@SyncDate,112)<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\tDECLARE @Receivers varchar(1000)<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @receivers = &lsquo;wukun@lvshou.com;liqihua@lvshou.com;zhengxuesong@lvshou.com&rsquo;<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\tDECLARE @table VARCHAR(max),@body VARCHAR(max),@COUNT INT<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @COUNT = 0 SET @SyncCount = 0<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&ndash;2.201<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @table = &lsquo;<\/p>\n<p><span style=\"color: rgb(51, 51, 51); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 21px; background-color: rgb(255, 255, 255); \">&lsquo;<\/span><br style=\"margin: 0px; padding: 0px; color: rgb(51, 51, 51); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 21px; background-color: rgb(255, 255, 255); \" \/><br \/>\n<span style=\"color: rgb(51, 51, 51); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 21px; background-color: rgb(255, 255, 255); \">SELECT @table = @table + &lsquo;<\/span><br style=\"margin: 0px; padding: 0px; color: rgb(51, 51, 51); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 21px; background-color: rgb(255, 255, 255); \" \/><\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&lsquo;+ &lsquo;<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&lsquo;+ &lsquo;<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&lsquo;+ &lsquo;<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&lsquo;<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tFROM server.msdb.dbo.<span class=\"hilite\" style=\"margin: 0px; padding: 0px; color: rgb(255, 255, 255); background-color: rgb(255, 153, 51); \">sysjobhistory<\/span>&nbsp;sjh(NOLOCK)<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tJOIN server.msdb.dbo.sysjobs sj(NOLOCK) ON sjh.job_id = sj.job_id<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tJOIN server.msdb.dbo.sysjobsteps sjt(NOLOCK) ON sjh.step_id = sjt.step_id AND sjh.job_id = sjt.job_id<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tWHERE run_status =0<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tAND msdb.dbo.agent_datetime(run_date,run_time)&gt; @LastRun<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tORDER BY run_date<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @COUNT = @@ROWCOUNT<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tIF @COUNT &gt; 0<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tBEGIN<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @SyncCount = @SyncCount + @COUNT<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @table = @table + &lsquo;<\/p>\n<table cellspacing=\"0\" style=\"margin: 0px; padding: 0px; font-size: 12px; color: rgb(51, 51, 51); font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 21px; background-color: rgb(255, 255, 255); \">\n<tbody style=\"margin: 0px; padding: 0px; \">\n<tr style=\"margin: 0px; padding: 0px; \">\n<td style=\"margin: 0px; padding: 0px; \">\n\t\t\t\t&lsquo; + CONVERT(VARCHAR(10),ROW_NUMBER() OVER (ORDER BY run_date))+ &lsquo; job\u540d\u79f0\uff1a&rsquo; + CASE(ISNULL(sj.NAME,&rdquo;))WHEN &rdquo; THEN &lsquo;&nbsp;&rsquo; ELSE sj.NAME END +<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t\t\t\t&lsquo;<\/td>\n<\/tr>\n<tr style=\"margin: 0px; padding: 0px; \">\n<td style=\"margin: 0px; padding: 0px; \">\n\t\t\t\t\u6b65\u9aa4\uff1a&rsquo; + CASE(ISNULL(sjt.step_name,&rdquo;))WHEN &rdquo; THEN &lsquo;&nbsp;&rsquo; ELSE sjt.step_name END + REPLICATE(&lsquo;&nbsp;&rsquo;,4) + &lsquo;\u6267\u884c\u65f6\u95f4\uff1a&rsquo; + CASE(ISNULL(sjh.run_date,&rdquo;))WHEN &rdquo; THEN &lsquo;&nbsp;&rsquo; ELSE CONVERT(VARCHAR(50),sjh.run_date,120) END +<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t\t\t\t&lsquo;<\/td>\n<\/tr>\n<tr style=\"margin: 0px; padding: 0px; \">\n<td style=\"margin: 0px; padding: 0px; \">\n\t\t\t\t\u9519\u8bef\u6d88\u606f\uff1a&rsquo; + CASE(ISNULL(sjh.message,&rdquo;))WHEN &rdquo; THEN &lsquo;&nbsp;&rsquo; ELSE sjh.message END +<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t\t\t\t&lsquo;<\/td>\n<\/tr>\n<tr style=\"margin: 0px; padding: 0px; \">\n<td style=\"margin: 0px; padding: 0px; \">\n\t\t\t\t\u6267\u884cSQL:&rsquo; + CASE(ISNULL(sjt.command,&rdquo;))WHEN &rdquo; THEN &lsquo;&nbsp;&rsquo; ELSE sjt.command END +<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t\t\t\t&lsquo;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\t&lsquo;<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tSET @body = dbo.getHTML(@table)<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t&ndash;SELECT @body<\/p>\n<p style=\"margin: 0px; padding: 8px 0px; line-height: 22px; text-align: justify; color: rgb(85, 85, 85); font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255); \">\n\tEXEC msdb.dbo.sp_send_dbmail<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t@profile_name = &lsquo;LogMonitor&rsquo;,<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t@recipients = @receivers,<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t@body_format = &lsquo;HTML&rsquo;,<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t@body = @body,<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\t@subject = &lsquo;Job\u6267\u884c\u9519\u8bef[201]&lsquo;;<br style=\"margin: 0px; padding: 0px; \" \/><br \/>\n\tEND<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5229\u7528\uff1a1\uff0cmssql job\u8fd0\u884c\u30022\uff0c\u94fe\u63a5\u670d\u52a1\u5668\uff0c3\uff0cmssql \u90ae\u4ef6\u53d1\u9001 \u4f8b\uff1a DECLARE @LastR [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[],"class_list":["post-1929","post","type-post","status-publish","format-standard","hentry","category-mysql"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts\/1929","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/comments?post=1929"}],"version-history":[{"count":0,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/posts\/1929\/revisions"}],"wp:attachment":[{"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/media?parent=1929"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/categories?post=1929"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/enjoyasp.net\/index.php\/wp-json\/wp\/v2\/tags?post=1929"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}