2011-12-07 53 views
0

我正面臨一個非常奇怪的問題!在我使用CoreData的應用程序中,我創建了一個模型。當應用程序運行時創建數據庫。我使用Firefox SqliteManager打開數據庫,併爲其添加了另一列「ZABOUT」(出於某種原因,帶有Z的核心數據前綴列)。無論如何,我還用一些數據填充了ZABOUT列。但現在,當我從應用程序中檢索對象並顯示ZABOUT的值時,它顯示爲空。任何想法正在發生。CoreData模型未檢索屬性值

如果我從iPhone應用程序中設置值,那麼它打印出來沒關係。

回答

1

核心數據和SQLite是獨立的技術,你不能以這種方式混合它們。如果你想添加另一個實體,你需要通過核心數據模型來完成,而不是通過SQLite。

Core Data將其用作後備存儲的sqlite文件與從其數據模型派生的私有模式配置在一起。由於Core Data框架正在控制.sqlite文件的模式和內容,因此最好不要將其視爲sqlite文件。 SQLite的使用本質上是一個實現細節。

更多關於Core datawhat Core Data is Not。核心數據不是一個關係數據庫,如果這就是你想要的,你可以考慮直接使用SQLite。 XMLPerformance可能是最好的sqlite-on-iOS示例。

+0

因此,如果我有100條記錄需要插入到應通過CoreData提供的SqlLite數據庫中,我應該怎麼做? – azamsharp

+0

如果您問如何預先填充核心數據存儲,最簡單的答案是編寫一個小應用程序來填充數據存儲,然後將它創建的數據存儲複製到您的項目中