建立,插入,更新和刪除:使用executeupdate方法,而查詢則用executequery
1.例項化fmdatabase
//paths: ios下document路徑,document為ios中可讀寫的資料夾nsarray *paths = nssearchpathfordirectoriesindomains(nsdocumentdirectory, nsuserdomainmask, yes);
nsstring *documentdirectory = [paths objectatindex:0];
//dbpath: 資料庫路徑,在document中。
//建立資料庫例項 db 這裡說明下:如果路徑中不存在"test.db"的檔案,sqlite會自動建立"test.db"
fmdatabase *db= [fmdatabase databasewithpath:dbpath] ;
if (![db open])
2.建立表
//建立乙個名為user的表,有兩個字段分別為string型別的name,integer型別的 age
[db executeupdate:@"create table user (name text,age integer)"];
3.插入
//插入資料使用oc中的型別 text對應為nsstring integer對應為nsnumber的整形
[db executeupdate:@"insert into user (name,age) values (?,?)",@"jeffery",[nsnumber numberwithint:20]];
4.更新
//更新資料
[db executeupdate:@"update user set name = ? where name = ? ",@"hello",@"jeffery"];
5.刪除
//刪除資料
[db executeupdate:@"delete from user where name = ?",@"jeffery"];
6.查詢
//返回資料庫中第一條滿足條件的結果nsstring *aa=[db stringforquery:@"select name from user where age = ?",@"10"];
//返回全部查詢結果
fmresultset *rs=[db executequery:@"select * from user"];
rs=[db executequery:@"select * from user where age = ?",@"10"];
while ([rs next])
[rs close];
備註:需要提一點就是:執行緒安全
使用fmdatabasequeue很簡單,首先用乙個資料庫檔案位址來初使化fmdatabasequeue,然後就可以將乙個閉包(block)傳入indatabase方法中。 在閉包中運算元據庫,而不直接參與fmdatabase的管理。
// 建立,最好放在乙個單例的類中為了檢視sqlite中的資料,乙個好的圖形化介面的資料庫管理程式是必不可少的。mysql有phpmyadmin,那麼sqlite呢?fmdatabasequeue *queue = [fmdatabasequeue databasequeuewithpath:apath];
// 使用
[queue indatabase:^(fmdatabase *db)
}];
// 如果要支援事務
[queue intransaction:^(fmdatabase *db, bool *rollback)
// etc…
[db executeupdate:@"insert into mytable values (?)", [nsnumber numberwithint:4]];
}];
我主要使用的是firefox的乙個名為sqlite manager的外掛程式,安裝此外掛程式後,可以直接開啟字尾名為sqlite的資料庫檔案。sqlite manager提供乙個圖形化的介面來執行資料查詢或更改操作。
swift使用FMDB資料庫增刪改查
資料快取和fmdb是很多程式需要做的事,但是swift又有一些坑,希望這篇文章能對大家有用,除了fmdb資料庫的操作,還有swift單例的寫法,if let在專案中實戰用法,僅供參考 直接上 年 未登入狀態新增到購物車的資料 import uikit class shopcar sqlitetool...
fmdb實現sqlite資料庫的增刪改查功能 上
移動端開發中許多地方需要用到一些資料持久化操作,比如將一些資料直接寫入沙盒,存入偏好設定,歸檔等。但是有些時候需要把一些資料量稍微大一點的東西做本地的儲存,比如用第三方環信做im開發中我們需要將使用者資訊儲存到移動端,所以就使用到了sqlite,一款在移動開發中經常用到的嵌入式資料庫。如果我們使用原...
使用sqlalchemy的增刪改查
from connect import base,session from sqlalchemy import column,integer,string,datetime,boolean from datetime import datetime class user base tablename...