1. 如果後期需要增加數據庫中的字段怎麼實現,如果不使用CoreData呢?
編寫SQL語句來操作原來表中的字段
1> 增加表字段
ALTER TABLE 表名 ADD COLUMN 字段名 字段類型;
2> 刪除表字段
ALTER TABLE 表名 DROP COLUMN 字段名;
3> 修改表字段
ALTER TABLE 表名 RENAME COLUMN 舊字段名 TO 新字段名;
2. SQLite數據存儲是怎麼用?
1> 添加SQLite動態庫:
2> 導入主頭文件:#import <sqlite3.h>
3> 利用C語言函數創建\打開數據庫,編寫SQL語句
3. 簡單描述下客戶端的緩存機制?
1. 緩存可以分爲:內存數據緩存、數據庫緩存、文件緩存
2. 每次想獲取數據的時候
1> 先檢測內存中有無緩存
2> 再檢測本地有無緩存(數據庫\文件)
3> 最終發送網絡請求
4> 將服務器返回的網絡數據進行緩存(內存、數據庫、文件),以便下次讀取
4. 你實現過多線程的Core Data麼?NSPersistentStoreCoordinator,NSManagedObjectContext和NSManagedObject中的哪些需要在線程中創建或者傳遞?你是用什麼樣的策略來實現的?
1> CoreData是對SQLite數據庫的封裝
2> CoreData中的NSManagedObjectContext在多線程中不安全
3> 如果想要多線程訪問CoreData的話,最好的方法是一個線程一個NSManagedObjectContext
4> 每個NSManagedObjectContext對象實例都可以使用同一個NSPersistentStoreCoordinator實例,這是因爲NSManagedObjectContext會在便用NSPersistentStoreCoordinator前上鎖
5. core data數據遷移
http://blog.csdn.net/jasonblog/article/details/17842535