1、sql語句的預編譯:將語句轉為資料流,執行語句前檢查語句的語法,但不能知道語句是否能查出結果。此方法有返回值
預編譯成功則返回sqlite_ok----0否則返回sqlite_error----1
int sqlite3_prepare_v2(
sqlite3 *db, //指向資料庫的指標
const char *zsql, //sql語句
int nbyte, //sql語句的長度 (一般用-1,系統可以自動算出字串得長度)
sqlite3_stmt **ppstmt, //指向語句的指標
const char **pztail //sql中沒有用到的一部分,一般為空
);2、sql語句的值繫結
*此類方法均有返回值 預編譯成功則返回sqlite_ok----0否則返回sqlite_error----1
//對整數值的繫結
int sqlite3_bind_int(
sqlite3_stmt*, //指向語句的指標
int, //佔位符的序號(從1開始以此類推)
int //繫結的值
);//對字串值的繫結
int sqlite3_bind_text(
sqlite3_stmt*, //指向語句的指標
int, //佔位符的序號(從1開始以此類推)
const char*, //要繫結的值(這裡要c型別的字串(cstring),一般我們使用的是oc的字串(nsstring*)要通過- (__strong const char *)utf8string轉一下就可以了)
int n, //該字串的長度(一般用-1,系統可以自動算出字串得長度)
void(*)(void*) //**函式(這裡博主還沒用過所以不是很了解以後會慢慢更新)
);//對二進位制資料值的繫結 一般用於的訪問
int sqlite3_bind_blob(
sqlite3_stmt*, //指向語句的指標
int, //佔位符的序號(從1開始以此類推)
const void*, //要繫結的值(這裡要的是c型別的位元(byte),一般我們使用的是oc的nsdata(nsdata*)要通過- (const void *)bytes轉一下就可以了)
int n, //資料的長度(用- (nsuinteger)length得到 這裡為什麼不用-1呢?因為-1對於算字串長度在行,其他的不一定準所以這裡我們手動算出資料的長度)
void(*)(void*) //**函式(這裡博主還沒用過所以不是很了解以後會慢慢更新)
);3、sql語句的取值(從資料庫中對每一列取值)
//對整數欄位的取值
int sqlite3_column_int(
sqlite3_stmt*, //指向語句的指標
int icol //資料庫中表中列的序號(從0開始以此類推)
);//對字串欄位的取值
*注意這裡我們取得是無符號的c字串我們要先轉為有符號c字串再轉為oc字串
例sname為oc字串
nsstring *sname=[nsstring stringwithutf8string:(const char *)sqlite3_column_text(stmt, 1)];
const unsigned char *sqlite3_column_text(
sqlite3_stmt*, //指向語句的指標
int icol //資料庫中表中列的序號(從0開始以此類推)
);//對二進位製字段的取值
*注意這裡我們取得是c二進位制我們要轉為oc二進位制(我們要將byte(c)轉為nsdata(oc)通過+ (id)datawithbytes:(const void *)bytes length:(nsuinteger)length;因為這裡需要資料的長度所以需要呼叫int sqlite3_column_bytes(sqlite3_stmt*, int icol);獲取資料的長度)
例int length=sqlite3_column_bytes(stmt,3);//獲取二進位制資料的長度
nsdata *img=[nsdata datawithbytes:sqlite3_column_blob(stmt, 3) length:length]; //將二進位制資料轉換位nsdata物件
const void *sqlite3_column_blob(
sqlite3_stmt*, //指向語句的指標
int icol //資料庫中表中列的序號(從0開始以此類推)
);
cmake常用語法介紹
使用cmake編譯程式 cd path of cmakelist.txt cmake make make install 語法 1.link directories 查詢動態庫路徑,相當於makefile的 l選項,且該方法必須在add library和add executable之前 2.鏈結靜態...
markdown常用語法介紹
markdown是一種輕量級標記語言,創始人為約翰 格魯伯 英語 john gruber 它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成有效的xhtml 或者html 文件。markdown 是一種輕量級標記語言,讓寫作者專注於寫作而不用關注樣式。很多有程式設計基礎的程式設計師比較喜歡使用m...
mysql常用語法 MySQL常用語法
更新資料 update 表名 set 健名 更改的值 where 建 刪除資料 delete from 表名 where 索引 create index 索引名稱 on 表名 鍵名 建立試圖 create view 檢視名 鍵,鍵 as select matchno,abs won lost fro...