首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FMDB和LIKE子句

FMDB和LIKE子句
EN

Stack Overflow用户
提问于 2012-01-27 05:20:49
回答 2查看 929关注 0票数 0

我在让iOS的FMDB包装器使用参数和LIKE子句时遇到了问题。事实上,我在使用FMDB的SQLite上使用LIKE子句时遇到了问题。

我尝试使用` `Name LIKE '%dam%‘来匹配"Adam",并尝试将其指定为参数,如下所示,但都不起作用。

代码语言:javascript
复制
    [buffer appendString:@" Name LIKE '%dam%' "]; // no results

    [buffer appendString:@" Name LIKE ? "];
    [params addObject:[NSString stringWithFormat:@"%%%@%%", args.name]]; // no results

    [buffer appendString:@" Name LIKE '%' ? '%' "];
    [params addObject:[NSString stringWithFormat:@"%%%@%%", args.name]]; // no results

表中肯定有符合条件的项,我就是不明白为什么FMDB不返回它们。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-13 17:05:37

有一天我也头疼。尝尝这个

代码语言:javascript
复制
[buffer appendString:[NSString stringWithFormat:@" Name LIKE '%@dam%@' ",@"%",@"%"];
票数 0
EN

Stack Overflow用户

发布于 2012-01-27 08:07:31

您还可以尝试使用常规SQL查询将数据提取到FMResultset。这对我来说很好。

如果您稍后需要过滤数据,请使用NSPredicate,它非常有效。

NSPredicate文档

代码语言:javascript
复制
predicate =
[NSPredicate predicateWithFormat:@"authors.lastName CONTAINS %@", @"Mark" ];
filtered  = [bookshelf filteredArrayUsingPredicate:predicate];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9025514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档