int sqlite3_data_count(sqlite3_stmt *pStmt);
sqlite3_data_count(P) 接口返回准备语句 P 的结果集中当前行的列数。如果准备语句 P 没有准备好返回结果(通过调用 sqlite3_column() 系列接口),则 sqlite3_data_count(P) 返回 0。如果 P 是一个 NULL 指针,sqlite3_data_count(P) 也会返回 0。如果之前对 sqlite3_step(P) 的调用返回了 SQLITE_DONE,则 sqlite3_data_count(P) 也会返回 0。如果之前对 sqlite3_step(P) 的调用返回了 SQLITE_ROW,则 sqlite3_data_count(P) 将返回非零值,但 PRAGMA incremental_vacuum 除外,因为它总是返回零,因为该多步骤 pragma 的每个步骤都返回 0 列数据。