起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 97|回复: 2

【问题】查询出错**

[复制链接]
发表于 2008-12-25 17:06:53 | 显示全部楼层 |阅读模式
在一个 功能的beforeFlowout事件中写了以下代码,同样的 sql语句在数据库中测试,查到3条记录,而i一直是1.怎么回事呢?
var
  tsb:string;
  ltime:string;
  i:integer;
  lfilter:string;
  lQuery:TQuery;
begin
  ltime:=sysutils.DateToStr(sysutils.Now-7);
  tsb:=dsbEvent.DataSet.FieldByName('sbbh').AsString;
  if tsb='' then  exit
else
begin

  lfilter:= 'select * from eventmsg where sbbh = '''+ tsb +''' and eventCreateTime >to_date('''+ltime + ''', ''yyyy-mm-dd'')';

  TSQLDataSet(dsbEvent.DataSet).SQL.Text:=lfilter;

  dsbEvent.DataSet.Open;

  i:=dsbEvent.DataSet.RecordCount;
  if i >=3 then
  begin
     dialogs.ShowMessage('该设备一周内出现五次告警,升级为问题! ');

  end;
end;
回复

使用道具 举报

发表于 2008-12-25 17:23:43 | 显示全部楼层
在TSQLDataSet(dsbEvent.DataSet).SQL.Text:=lfilter;前加一句试试:
dsbEvent.DataSet.close
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-25 17:32:01 | 显示全部楼层
结了。谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-28 14:09 , Processed in 0.037600 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表