int sqlite3_get_table(
sqlite3 db, / an open database */
const char zsql, / sql to be evaluated */
char **pazresult, / results of the query */
int pnrow, / number of result rows written here */
int pncolumn, / number of result columns written here */
char *pzerrmsg / error msg written here /
);void sqlite3_free_table(char **result);
第1個引數不再多說,看前面的例子。
第2個引數是sql 語句,跟sqlite3_exec 裡的sql 是一樣的。是乙個很普通的以\0結尾的char字串。
第3個引數是查詢結果,它依然一維陣列(不要以為是二維陣列,更不要以為是三維陣列)。它記憶體布局是:欄位名稱,後面是緊接著是每個欄位的值。下面用例子來說事。
第4個引數是查詢出多少條記錄(即查出多少行,不包括欄位名那行)。
第5個引數是多少個字段(多少列)。
第6個引數是錯誤資訊,跟前面一樣,這裡不多說了。
pazresult返回的字串數量實際上是(pnrow+1)(*pncolumn),因為前(*pncolumn)個是欄位名
修改上篇的例子,使用sqlite3_get_table,來去的結果集:
#include
using namespace std;
#include 「sqlite/sqlite3.h」
int callback(void*,int,char**,char**);
int main()
/*int callback(void* ,int ncount,char** pvalue,char** pname)
cout
}*/
sqlite 基礎入門
顯示表結構 sqlite schema table 獲取所有表和檢視 sqlite tables sqlite database獲取指定表的索引列表 sqlite indices table 匯出資料庫到 sql 檔案 sqlite output filename sqlite dump sqlit...
SQLite入門一 SQLite概述
學習 掌握一門新的技術通常需要了解這門技術產生的背景,為什麼需要這樣的技術,或者說能夠解決那些問題?sqlite概述 sqlite特性 與其他資料庫比較 使用sqlite解決那些問題 sqlite概述 sqlite資料庫引擎具有獨立 無伺服器端 零配置 支援事務等特點,作為一款優秀的開源嵌入式資料庫...
SQLite使用入門
什麼是sqlite sqlite是一款非常輕量級的關係資料庫系統,支援多數sql92標準。sqlite在使用前不需要安裝設定,不需要程序來啟動 停止或配置,而其他大多數sql資料庫引擎是作為乙個單獨的伺服器程序,被程式使用某種內部程序通訊 典型的是tcp ip 完成傳送請求到伺服器和接收查詢結果的工...