标题:SQL语句查询两个日期段中间的数据,再进行金额字段汇总出错!
只看楼主
踏雪冬思
Rank: 2
等 级:论坛游民
帖 子:5
专家分:32
注 册:2009-12-29
结帖率:0
已结贴  问题点数:0 回复次数:2 
SQL语句查询两个日期段中间的数据,再进行金额字段汇总出错!
  with DataModule2.ADOdk do      //查询指定日期段的金额进行汇总显示
begin
close;
SQL.CLear;
SQL.add('select sum(金额) ye from dkxx where 录入时间 between :TimeBegin and :TimeEnd');
Parameters.ParamByName('TimeBegin').Value:=DateTimePicker9.Date;
Parameters.ParamByName('TimeEnd').Value:=DateTimePicker10.Date;
open;
end;

  Edit1.Text:= DataModule2.ADOdk.FieldByName('ye').Value;


==========
以上的句子在access中似乎无错,在sql中报not convert variant of type (Null) into type (String)' 错误,可以确定这两个时间段中间的金额字段中有数据,不是空的!
搜索更多相关主题的帖子: SQL 字段 数据 金额 语句 
2010-01-19 02:14
mohao163
Rank: 5Rank: 5
来 自:南宁
等 级:职业侠客
威 望:2
帖 子:79
专家分:383
注 册:2009-9-25
得分:5 
检查下DateTimePicker9.Date的时间格式和数据库的时间格式是不是一致
你ShowMessage(DataModule2.ADOdk.SQL.TEXT),看看里边的查询语句直接拿到数据库能不能用
如果是类型错误,应该formatdatetime('yyyy-mm-dd hh:mm:ss',DateTimePicker9.Date);转换下格式
2010-01-19 09:23
shuang200911
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:39
专家分:337
注 册:2009-11-2
得分:5 
那是因为你选择的日期,查询的结果使DataModule2.ADOdk.FieldByName('ye').Value=NULL导致的
2010-01-25 22:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-296002-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.199027 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved