关于Filter属性
select * from tb_areasendtime t where
INSTR('aabbcc','bb') > 0
上面是oracle的查询语句。
---------------------------
clientdataset.filter := 'INSTR(''aabbcc'',''bb'') > 0 ';
但clientdataset.filter不支持INSTR属性,sql的charindex也不也,请问这个函数有没有提供支持?
[解决办法]
先搞清楚是什么数据库,每种数据库支持的函数不一样,而且 filter中不支持复杂的语句,你还是用sql吧
[解决办法]
filter并不是去数据库重新查询,而是在现有查询到的数据基础上实现一些简单的过滤,比如and or
类似charindex这些属于数据库的函数是不支持的
[解决办法]
clientdataset应该支持like
试试
filter := '''aabbcc'' like ''%bb%''';
[解决办法]
filter支持like和=,<>
函数你要在写在Filter的外边
ClientDataSet1.Filter := QuotedStr('aabbcc') + ' like ' + QuotedStr('%bb%')