【发布时间】:2012-01-13 02:19:56
【问题描述】:
是否可以通过 FMDB 将数组传递给 SELECT ... WHERE ... IN 语句? 我试图像这样内爆数组:
NSArray *mergeIds; // An array with NSNumber Objects
NSString *mergeIdString = [mergeIds componentsJoinedByString:@","];
NSString *query = @"SELECT * FROM items WHERE last_merge_id IN (?)";
FMResultSet *result = [database executeQuery:query, mergeIdString];
这仅在数组中只有 1 个对象时才有效,这让我相信 FMDB 在整个内爆字符串周围添加引号。
所以我尝试将数组按原样传递给 FMDB 的方法:
NSArray *mergeIds; // An array with NSNumber Objects
NSString *query = @"SELECT * FROM items WHERE last_merge_id IN (?)";
FMResultSet *result = [database executeQuery:query, mergeIds];
这根本不起作用。
我在 README 或 FMDB 的 github 页面上的示例中没有找到任何相关内容。
谢谢,斯特凡
【问题讨论】: