首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

(待)ADOQuery1.FieldByName('')找不到字段

2012-03-01 
(在线等待)ADOQuery1.FieldByName()找不到字段数据库中有表 MN,表中有字段:dates(日期) inmoney(借款金

(在线等待)ADOQuery1.FieldByName('')找不到字段
数据库中有表 MN,表中有字段:dates(日期) inmoney(借款金额)
我是想在一个指定的时间段里面查询一共借款多少,但下面的代码运行之后一直提示,ADOQuery1.Fields找不到'inmoney'字段,这是什么愿意呢?下面的代码错在哪里啊?
本人是新手,请高手帮忙看一下: 
var
 sql,st,ed:string;
begin
 st:=Datetostr(DateTimePicker1.Date);
 ed:=Datetostr(DateTimePicker1.Date);

 ADOQuery1.Close;
 ADOQuery1.SQL.Clear;
 sql:='SELECT SUM(inmoney) FROM MN WHERE dates BETWEEN :st AND :ed' ;
 ADOQuery1.SQL.Add(sql);
 EDit3.Text:= ADOQuery1.FieldByName('inmoney').AsString;
 ADOQuery1.Open;
end;

[解决办法]
sql:='SELECT SUM(inmoney) FROM MN WHERE dates BETWEEN :st AND :ed' ;
改成
sql:='SELECT SUM(inmoney) as inmoney FROM MN WHERE dates BETWEEN :st AND :ed' ;

[解决办法]
1、SUM(inmoney) as inmoney
2、参数不赋值吗?
3、 应该先OPEN吧
ADOQuery1.Open;

EDit3.Text:= ADOQuery1.FieldByName('inmoney').AsString;



[解决办法]
var
sql,st,ed:string;
begin

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
sql:='SELECT SUM(inmoney) as inmoney FROM MN WHERE dates >= '''+Datetostr(DateTimePicker1.Date)+''' AND dates <='''+Datetostr(DateTimePicker2.Date)+'''' ;
ADOQuery1.SQL.Add(sql);
ADOQuery1.Open;
EDit3.Text:= ADOQuery1.FieldByName('inmoney').AsString;
end;

应该是DateTimePicker2.Date 吧,完整了

热点排行