2012-04-11 23 views
0

在我的應用程序中,我有兩個線程在運行。一個將查詢服務器並更新數據庫。其他線程將獲取數據並更新UI。
問題是,當讀取和寫入同時調用數據庫時,一個失敗。錯誤如下:
創建SELECT時出錯c.id,c.address,c.type,e.id,e.name,e.logo,實體e WHERE e.id = c.entity AND c.id =?; >'數據庫被鎖定'iOS - Sqlite同時讀寫

+0

你應該使用FMDatabase:https://github.com/ccgus/fmdb避免與你的SQLite數據庫線程同步錯誤 – CarlJ 2012-04-11 10:19:43

+0

只是檢查...你更新數據庫後提交嗎? – giorashc 2012-04-11 10:26:25

+0

@meccan:我認爲幾個sql語句浪費了整合一個巨大的fmdb src。 – Satyam 2012-04-12 02:36:37

回答

0

正如@meccan在評論中所提到的,解決方案是使用FMDB或更好地使用核心數據。

+0

FMDB的FMDatabaseQueue值得注意。 – Rob 2012-07-20 05:52:39