Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios FMDB检查方法是否为空并向前移动分离_Ios_Swift_Sqlite_Fmdb - Fatal编程技术网

Ios FMDB检查方法是否为空并向前移动分离

Ios FMDB检查方法是否为空并向前移动分离,ios,swift,sqlite,fmdb,Ios,Swift,Sqlite,Fmdb,在FMDB中,next函数(如if a!.next{})既检查是否有另一行,又在有另一行时向前移动,我们是否可以分别执行这些操作,比如只检查是否有另一行 我已经阅读了文档,但似乎没有这样的直接方法。FMDB中的方法只是函数的包装。您可能会被用来分离在其他环境中看到的“推进记录集的游标”和“EOF测试”的函数,但SQLite就是这样做的 因此,不幸的是,SQLite并没有为“是否还有另一行”和“检索下一行”提供单独的函数。这是一个由FMDB调用的函数,可用于两个目的。有关SQLite函数的完整列表

在FMDB中,
next
函数(如
if a!.next{}
)既检查是否有另一行,又在有另一行时向前移动,我们是否可以分别执行这些操作,比如只检查是否有另一行

我已经阅读了文档,但似乎没有这样的直接方法。

FMDB中的方法只是函数的包装。您可能会被用来分离在其他环境中看到的“推进记录集的游标”和“EOF测试”的函数,但SQLite就是这样做的

因此,不幸的是,SQLite并没有为“是否还有另一行”和“检索下一行”提供单独的函数。这是一个由FMDB调用的函数,可用于两个目的。有关SQLite函数的完整列表,请参见


也许FMDB使用一个名为
FMRecordSet
的类会引起这种混乱,但我们必须记住,它实际上只是SQLite C API的一个薄包装。它仅限于该API中固有的相同函数

这里有没有像android中那样的“光标”?我真的找不到它,请直接告诉我,如果你知道这方面的一些事情,这在我目前的项目中非常重要,因为我正在将android应用程序转换为ios,如果我找不到解决方法,它会增加很多复杂性,谢谢!我理解你在寻找什么(tho,我承认我猜你来自一个Microsoft ADO/DAO世界,因为他们也是这样做的),但这不是标准SQLite API的一部分,因此也不是围绕SQLite API的FMDB瘦包装的一部分。我知道你可能会习惯于迭代记录集,但平心而论,SQLite方法也非常有效。这只是解决同一问题的一种稍微不同的方法。好的,谢谢你的回复,我想多次查询和迭代是唯一的出路。好的,我阅读了一些文档并重新构造了一些代码,现在更好了,我被“hasAnotherRow”函数弄糊涂了。感谢所有的帮助,它现在已经解决了,没有重复的查询,只是在“cursor.movetolast”之类的地方循环了一会儿,但没关系。