iOS開發資料庫篇 FMDB資料庫佇列

2022-09-11 06:18:15 字數 1288 閱讀 7245

ios開發資料庫篇—fmdb資料庫佇列

一、**示例

1.需要先導入fmdb框架和標頭檔案,由於該框架依賴於libsqlite庫,所以還應該匯入該庫。

2.**如下:

15 16 @implementation yyviewcontroller

17 18 - (void)viewdidload

19 else

36

39 }];

40 self.queue=queue;

41

42 }

43 44 -(void)touchesbegan:(nsset *)touches withevent:(uievent *)event

45 ];

50

51 //查詢資料

52 [self.queue indatabase:^(fmdatabase *db)

63 }];

64 65 }

66 67 @end

先插入資料,之後查詢結果,列印如下:

3.**說明

有了乙個佇列物件,它的內部自動就擁有乙個資料庫物件,且資料庫的操作是執行緒安全的。

二、事務

事務,沒有事務的話會出現問題。

舉例:銀行的例子

張三和李四賬戶都有1000塊錢,如果張三要轉賬給李四,需要執行兩條sql語句,考慮到安全性,要求這兩條魚具要麼全部執行成功,要不全部執行失敗。

事務:把多條語句放到同乙個事務中,要麼全部成功,要不全部失敗(如果中途出現問題,那麼會自動回滾)。事務的執行具有原子性。

事務**處理:

把多條語句新增到乙個事務中去執行:

1    //插入資料

2 [self.queue indatabase:^(fmdatabase *db) ];

如果中途出現問題,那麼會自動回滾,也可以選擇手動回滾。

1     //插入資料

2 [self.queue indatabase:^(fmdatabase *db) ];

上面的**。前三條插入語句是作廢的。

事務處理的另一種方式:

1    [self.queue intransaction:^(fmdatabase *db, bool *rollback) ];
說明:先開事務,再開始事務,之後執行block中的**段,最後提交事務。 

iOS開發資料庫篇 FMDB資料庫佇列

一 示例 1.需要先導入fmdb框架和標頭檔案,由於該框架依賴於libsqlite庫,所以還應該匯入該庫。05 fmdb資料庫佇列4 5 6 7 89 import yyviewcontroller.h 10 import fmdb.h 11 12 inte ce yyviewcontroller ...

iOS開發資料庫篇 FMDB簡單介紹

ios開發資料庫篇 fmdb簡單介紹 一 簡單說明 1.什麼是fmdb fmdb是ios平台的sqlite資料庫框架 fmdb以oc的方式封裝了sqlite的c語言api 2.fmdb的優點 使用起來更加物件導向,省去了很多麻煩 冗餘的c語言 對比蘋果自帶的core data框架,更加輕量級和靈活 ...

iOS開發資料庫篇 FMDB簡單介紹

ios開發資料庫篇 fmdb簡單介紹 一 簡單說明 1.什麼是fmdb fmdb是ios平台的sqlite資料庫框架 fmdb以oc的方式封裝了sqlite的c語言api 2.fmdb的優點 使用起來更加物件導向,省去了很多麻煩 冗餘的c語言 對比蘋果自帶的core data框架,更加輕量級和靈活 ...