关于用ADODataSet Filter查询的问题,急!!!

AskValue 2003-08-19 05:58:29
我想用Filter功能查一个数据表中某字段长度是否小于10,即仅显示数值长度小于10位的数据。请大家帮帮忙!
...全文
49 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
AskValue 2003-08-20
  • 打赏
  • 举报
回复
晕~~~
帐都结了,才发现原来还是不行!亏大了!!!
AskValue 2003-08-20
  • 打赏
  • 举报
回复
结账,结帐了!!!
AskValue 2003-08-20
  • 打赏
  • 举报
回复
你知道你错在哪里了吗?
不应该让我用TQuery去试,那样写绝对不行!!!
nhdj 2003-08-20
  • 打赏
  • 举报
回复
不会吧,怎么可能?我真的亲自试验了
nhdj 2003-08-19
  • 打赏
  • 举报
回复
AskValue(小艾) ,你结贴吧,绝对没问题,亲自试验 ^_^

后面的兄弟不要抢了,这年头赚点分不容易,何况有100分
nhdj 2003-08-19
  • 打赏
  • 举报
回复
用查询组件做吧,把你的table换成adoquery或query

adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select * from table1 where len(colname)>10');
adoquery1.open;

AskValue 2003-08-19
  • 打赏
  • 举报
回复
还有没有其它方法?用SQL也行
bbs791109 2003-08-19
  • 打赏
  • 举报
回复
filter中只可以用字段名作為條件進行過濾。

你可以在adodataset中加上一個字段﹕select * ,len(字段) as field1 from 表。
ysycrazy 2003-08-19
  • 打赏
  • 举报
回复
procedure TForm1.ADOQuery1FilterRecord(DataSet: TDataSet;
var Accept: Boolean);
begin
if length(trim(DataSet.FieldByName(某字段).asstring))<10 then
Accept:=true
else
accept:=false;

end;
AskValue 2003-08-19
  • 打赏
  • 举报
回复
这样写不行,它会将length认成是个字段
ysycrazy 2003-08-19
  • 打赏
  • 举报
回复
filter='length(某字段)<10'
filtered:=true;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧