FMDB資料庫的簡單操作

2021-08-20 07:01:01 字數 1400 閱讀 8023

一直以來對資料庫的操作都感覺很麻煩,每次封裝fmdb的工具類都是一件讓人很頭大的事情,在這記錄一下它的一些常用操作,很方便實用

首先,是常用的資料庫語句

增 insert into 表名(欄位1, 欄位2) values(值1, 值2);

刪 delete from 表名 where 字段 = 值

查 select 欄位名(*) from 表名 where 字段 = 值

改 update 表名 set 字段 = 值 where 字段 = 值

然後,建立資料庫的名稱以及路徑

+ (nsstring *)getdbpath

初始化

+ (void)initialize

}

查詢並建立表和表中的字段

//建立表 注意新增 if not exists 判斷是否表已經存在

[_db executeupdate:@"create

table

ifnot

exists 表名 (id integer

notnull, 字段 字段型別, primary

key(id));"];

幾種常用的字段型別: text-字串 integer-數字 blob-data型別 一般建立的時候都會帶一些特定引數,例如時間,日期,版本號等等

查詢,是否存在指定的表

//執行查詢語句 使用count可以獲取滿足條件的記錄的數量  如果使用count函式,獲取時必須使用其別名(as)來獲取 返回yes則存在

fmresultset *set = [_db executequery:@"select count(*) as 'count' from 表名 where 包含的字段 = ?", 欄位的值];

if ([set next])

return no;

刪除操作

//執行刪除語句

[_db executeupdatewithformat:@"delete

from 表名 where 包含的字段 = %@", 欄位的值];

下面介紹一種在資料庫中儲存物件的方法

//模型轉換為二進位制資料  二進位制資料必須保留物件關係 使用歸檔api

nsdata *data = [nskeyedarchiver archiveddatawithrootobject:需要儲存的物件];

[_db executeupdatewithformat:@"replace into 表名(之前建立好的欄位名) values(%@)",data];

這種更新資料庫的方式和上面查詢是否存在的結合使用,很方便

資料庫操作 使用FMDB

ios中原生的sqlite api在使用上相當不友好,在使用時,非常不便。於是,就出現了一系列將sqlite api進行封裝的庫,例如fmdb plausibledatabase sqlitepersistentobjects等,fmdb 是一款簡潔 易用的封裝庫,這一篇文章簡單介紹下fmdb的使用...

資料庫操作 使用FMDB

ios中原生的sqlite api在使用上相當不友好,在使用時,非常不便。於是,就出現了一系列將sqlite api進行封裝的庫,例如fmdb plausibledatabase sqlitepersistentobjects等,fmdb 是一款簡潔 易用的封裝庫,這一篇文章簡單介紹下fmdb的使用...

資料庫操作 使用FMDB

ios中原生的sqlite api在使用上相當不友好,在使用時,非常不便。於是,就出現了一系列將sqlite api進行封裝的庫,例如fmdb plausibledatabase sqlitepersistentobjects等,fmdb 是一款簡潔 易用的封裝庫,這一篇文章簡單介紹下fmdb的使用...