#import
建立乙個類
#import ns_assume_nonnull_begin
@inte***ce dbdcachetool : nsobject
- (void) set;
@end
#import "dbdcachetool.h"
#import @implementation dbdcachetool
- (void) set
@end
ns_assume_nonnull_end
對於資料庫的操作,體現的**與寫在終端的命令很相似
這裡我把增刪改查寫在乙個set方法裡用於測試。
nsstring *docpath = [[nsstring alloc] init];
docpath = [nssearchpathfordirectoriesindomains(nsdocumentdirectory, nsuserdomainmask, yes) lastobject];
nslog(@"docpath == %@", docpath);
fmdatabase *fmdb = [fmdatabase databasewithpath:filename];
if ([fmdb open]) else
//建立表
bool executeupdate = [fmdb executeupdate:@"create table if not exists t_movie (id integer primary key autoincrement, name text not null);"];
int mark_movie = 1;
nsstring *name = [nsstring stringwithformat:@"冰雪奇緣%@",@(mark_movie)];
mark_movie++;
bool results = [fmdb executeupdate:@"insert into t_movie (name) values (?)",name];
if (results) else
注意此時我們的表的名字是 t_movie;
//刪除
// bool delete = [fmdb executeupdate:@"delete from t_movie where id = ?",@(1)];
// if (delete) else
// 修改
nsstring *newname = @"rushbmmyfriends";
nsstring *oldname = @"冰雪奇緣1";
bool update = [fmdb executeupdate:@"update t_movie set name = ? where name = ?",newname, oldname];
if(update) else
//查詢整個表
fmresultset * resultset = [fmdb executequery:@"select * from t_movie"];
//按條件查詢
//fmresultset *resultset = [fmdb executequery:@"select * from t_movie where id < ?",@(4)];
//遍歷查詢
while ([resultset next])
// // 刪除表
// bool result = [fmdb executeupdate:@"drop table if exists t_movie"];
// if (result) else
FMDB 基本使用
0.拼接資料庫存放的沙盒路徑 nsstring path nssearchpathfordirectoriesindomains nsdocumentdirectory,nsuserdomainmask,yes lastobject 1.通過路徑建立資料庫 fmdatabase db fmdatab...
使用FMDB 基本操作
建立,插入,更新和刪除 使用executeupdate方法,而查詢則用executequery 1.例項化fmdatabase paths ios下document路徑,document為ios中可讀寫的資料夾 nsarray paths nssearchpathfordirectoriesindo...
FMDB的基本使用
首先資料庫是系統資源,就像我們操作檔案一樣,所以併發操作時要注意安全。在ios上,只有乙個執行緒能夠開啟資料庫操作,其他執行緒要運算元據庫必須等資料庫關閉後才能開啟操作。ios中原生的sqliteapi在進行資料儲存的時候,需要使用c語言中的函式,操作比較麻煩。於是,就出現了一系列將sqlite a...