gpt4 book ai didi

cocoa - 可能的 FMDatabase/FMResultSet 错误

转载 作者:行者123 更新时间:2023-12-03 16:23:09 25 4
gpt4 key购买 nike

尽管我很少遇到 FMDatabase 问题,但今天我注意到一些奇怪的行为,并想知道这是一个错误还是由于我自己的错误。

NSString *query = [NSString stringWithFormat:@"SELECT * FROM TABLE_A WHERE modelId = %lu", modelId];
FMResultSet *resultSet = [db executeQuery:query];

while ([resultSetIPTCProperties next]) {
NSLog(@"MODEL ID: %lu", [resultSetIPTCProperties intForColumn:@"stringId"]);
}

奇怪的是,这一切都工作正常,但我想安全起见,并在 while 循环之前使用 [db hasAnotherRow] 的 if 语句,但即使结果集确实包含结果,也会返回 NO。

当我将生成的字典(使用 FMResultSet 的 resultDict 方法)记录到控制台时,我收到来自 FMResultSet 的警告,提示“警告:此集合中似乎没有列。”即使我可以在 while 循环中使用它们。

我在这里遗漏了什么吗?

最佳答案

您必须先调用[resultSet next],然后才能调用[resultSet resultDict],否则结果中的指针位于第一行之前。这也是为什么你的循环有效,但对 hasAnotherRow 的检查却不起作用的原因。

关于cocoa - 可能的 FMDatabase/FMResultSet 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6095256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com