当前报警窗口的设计(50分)

  • 主题发起人 主题发起人 mount
  • 开始时间 开始时间
M

mount

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在一个窗口显示当前的报警,我把currenttime设为参数,在
定时器里对currenttime赋值。currenttime:=now;
数据表rawdata的time也是在定时器里写的。

select b.hlname,a.data,c.statename
from rawdata a,idname b,state c
where ((a."time"=:currenttime) and (a.hlcode=b.hlcode))
and ((a.state<>1) and (c.statecode=a.state))
order by a."time" dec
可是我写了上面的语句后,报警窗口一个值也不显示,
若把a."time"=:currenttime去掉后,出现的是整个
报警的表。
可我只想显示当前的,怎么办?
 
a."time"的值怎么来的?
 
数据表 的rawdata关键字段time
 
怎么对它附的值?
 
我想不是赋值的问题,用
query1.paramByName('CurrentTime').AsDateTime := Now 就可以了,但是
我想你的 A.time 字段大概是个 DateTime 字段,那么,它的时间是很精确的,
当你执行这条语句时,时间已经与发生报警信息的时间不同了,所以,只能选择
出一个空表。不信,你可以在操作之前显示一下数据表中记录的时间与参数的时间
是否有不同。
 
报警时间精确到秒就可以了吧,我做报警的时候是截取到秒级的,
now 的时间精度太高了,具体是不是这样我也忘了,sorry^_^
 
多谢crab,a.time为@字段,按你说得改了,果真就好了。
 
后退
顶部