1
如何在停止循环结果之前检查sqlite查询是否返回任何内容。检查sqlite查询结果
//see if there are results and do something if not
while(sqlite3_step(selectstmt) == SQLITE_ROW)
{ /*process on reults */}
如何在停止循环结果之前检查sqlite查询是否返回任何内容。检查sqlite查询结果
//see if there are results and do something if not
while(sqlite3_step(selectstmt) == SQLITE_ROW)
{ /*process on reults */}
我想我错过了你的问题,如果它返回SQLITE_ROW,那么它有一排准备阅读。
的API是http://www.sqlite.org/capi3ref.html#sqlite3_step
您可以通过列函数访问这些数据:
http://www.sqlite.org/capi3ref.html#sqlite3_column_blob
所以你基本上是在做正确的事情,而sqlite3_step回报SQLITE_ROW您仍然有数据访问。
//澄清
SQLite的获取和使用sqlite3_step,称它不会取得整个结果集给你一次行之一。所以,直到你打电话给你,你才会知道你是否会获得数据。
当我在嵌入式设备上工作时,我不得不使用SQLite,但总是通过体面的DAL。我不是它的API的狂热粉丝,但它是轻量级的,我猜。
谢谢。我想通过调用sqlite3_step(selectstmt)我执行查询。我不想执行两次。一次检查SQLITE_ROW,另一个检查结果。或者这是没有创建一个数组来保存/缓存结果的唯一方法? – 4thSpace 2009-02-26 07:18:06