我正在使用一些sqlite3_bind例程(在iPhone SDK中),如下所示对表进行单个更新(INSERT或UPDATE):
sqlite3_bind_text(update_statement, 1, aString, -1, SQLITE_TRANSIENT);
sqlite3_bind_int(update_statement, 2, anInteger);
sqlite3_bind_int(update_statement, 3, pk);
但是,在检查更新的表格后,我发现了意外的结果。我在Xcode调试器中使用'step over'跟踪了进度,看起来这个三个sqlite3_bind例程的组正在循环,以便执行 MORE THAN ONCE 并且我得到多个插入或更新什么时候应该只有一个。这个例程不在while语句或任何内容中,所以我很困惑。
希望熟悉iPhone SDK中的sqlite3的人可以提供帮助。
答案 0 :(得分:0)
糟糕....如果包含sqlite3_bind的方法没有被其他函数在其他地方同时LOL冗余调用,则可能会有所帮助。我使用sqlite3_bind例程创建了对函数的单独调用,并完全忽略了删除原始调用。愚蠢的错误,解决了: sqlite3_bind没有循环。