程序中:
unit1.Form1.xslsQuery.Active:=false;
unit1.Form1.xslsQuery.SQL.Clear;
unit1.Form1.xslsQuery.SQL.Add('select sum(f_cjmy),sum(f_sl) from xsls');
unit1.Form1.xslsQuery.Active:=true;运行后,提示:XSLS表的第一个字段没有找到
(Project Project1.exe raised exception class EDatabaseError with message ‘xslsQuery:Field ’F_XSRQ' not found.Process stopped. Use Step or Run to continue)
但是同样的上面一段程序我在一个单独的新的窗体中试验是可以的啊
unit1.Form1.xslsQuery.Active:=false;
unit1.Form1.xslsQuery.SQL.Clear;
unit1.Form1.xslsQuery.SQL.Add('select sum(f_cjmy),sum(f_sl) from xsls');
unit1.Form1.xslsQuery.Active:=true;运行后,提示:XSLS表的第一个字段没有找到
(Project Project1.exe raised exception class EDatabaseError with message ‘xslsQuery:Field ’F_XSRQ' not found.Process stopped. Use Step or Run to continue)
但是同样的上面一段程序我在一个单独的新的窗体中试验是可以的啊
如果xsls表,存在f_cjmy,f_sl这两列,而且为数字类型,应该没有问题:unit1.Form1.xslsQuery.SQL.Add('select sum(f_cjmy) as 'kk',sum(f_sl) as 'kkkk' from xsls');
然后把SQL语句改成(select f_xsrq,f_sl,f_cjj,f_cjmy from xsls) 执行后又提示这里没有出现的一个字段又没有
使用的字段,要和查询出来的相对应,你可以查询出来而没有用它;
但却不能倒过来,没有查询就用到它比如:
...
unit1.Form1.xslsQuery.SQL.Add('select sum(f_cjmy) kk,sum(f_sl) kkk from xsls'); //这是正确的
...
edit1.text:=unit1.Form1.xslsQuery.FieldByName('f_xsrq').AsString; //这是错误的,因为数据集中没有'f_xsrq'这个字段