2012-12-05 46 views
0

嘿,我有一个应用程序,每天运行收集我的SQL Server 2008数据库中的表的更新。我也有一个前端网站,显示用户的这些统计信息。SQL Server检查数据更新

我想弄清楚通知用户,一旦他们登录到网站,该数据库当前正在更新。

我到目前为止的代码是:

SELECT * 
FROM dataLog 
WHERE theDT >= '2012-12-05 00:00:00' 
    AND theDT <= '2012-12-05 23:59:59' 
    AND theType <> 'Completed' 

当应用程序启动时,它这个记录写入dataLog表:

id | theDT     | theMsg  | theFunction  | theType 
130 2012-12-05 09:17:13.000 Beginning  Main    Starting 

而且其完成时,它写道:

id | theDT     | theMsg  | theFunction  | theType 
137 2012-12-05 09:47:13.000 Ended   Main    Completed 

我只是不知道如何去检查,因为我上面的代码显示它每次雷鬼dless如果它有完成或没有。

回答

1

试试这个:

select max_dt, theType from 
datalog d inner join 
(SELECT max(theDt) as max_dt FROM dataLog) m 
on d.theDt = m.max_dt 
+0

工作很好!谢谢,贝丝。 – StealthRT

0

很抱歉,如果这是太简单了。

Select Top 1 
    * 
From dataLog 
Where theDate < GetDate() 
Order By theDate DESC 

那么你的前端可以显示当前状态,如果状态启动时,显示“正在更新:开始在X”消息,如果状态为“已完成”,显示“更新为x完成“ 信息。