在数据窗口中检索数据
我们往往需要数据窗口仅显示我们需要的数据。在数据窗口中检索数据的方法很多,常用的是设置SetFilter和使用SQL语句来实现。
1、使用SetFilter进行数据过滤
首先需要构造条件语句。如数据窗口中有一列名为xyh,我们需要检索xyh等于"叶秋枫"的数据。那么可写语句如下:
string bl;
bl="xyh='叶秋枫'";
dw_1.setfilter(bl)//数据窗口的名为dw_1
dw_1.retrieve()//重新检索数据
这样数据窗口中就只显示xyh列为"叶秋枫"的记录。但有时候我们需要做更多的操作,这样就需要使用SQL。
2、使用SQL语句来检索数据
数据窗口显示的实际上也是SQL语句的结果。数据窗口有一个函数SetSQLSelect,我们可以用这个函数来重新指定新的查询,以让数据窗口来显示我们需要的数据。我们来看下面的例子:
int nhz;//定义一个整型变量,准备用来存放统计数据
newsql="Select * From fy Where fy.xyh='叶秋枫';";//构造一个SQL查询
SELECT sum(fy.xhj) INTO :nhz FROM fy WHERE Trim(fy.xyh)=:bl; //查询,并统计xhj列
dw_1.SetSQLSelect(newsql);//让数据窗口执行新的查询
st_2.text="共计费用"+string(nhz)+"元。";//显示查询结果
dw_1.Retrieve();//千万不要忘记刷新
可以看到,重新指定了SQL语句以后仍然需要用Retrieve()来重新检索数据,才能够显示我们需要的结果。
以上我们基本实现了数据的检索,大家可以根据这个思想写出功能更强的检索查询,如让用户指定查询的条件进行复合查询等等,这里就不再多写了。
如果您有什么问题,请到http://mapleafbutterfly.abc.yesite.com告诉我。