2011-02-24 58 views
0

我有一個SQLite數據庫。我應該將數據庫放在具有核心數據的數據結構中嗎?我能怎麼做?我的問題是表格之間的「z關係」。用Sqlite3爲iPhone/iPad填充核心數據結構

有可能嗎?

+0

我建議你將你的sqlite數據庫轉換成JSON文件並將其導入到核心數據中,如果可能的話。使它變得更容易,你可能會更成功的結果 – binnyb 2011-02-24 14:28:32

+0

但關係是否存在? – Luca 2011-02-24 14:41:01

回答

0

我找到了解決方案。將來,我應該直接使用SQLite,但對於那些遇到類似問題的人來說,此解決方案運行良好。

第1步:您的表中的核心數據添加列標題爲原始表的gl'ID臨時關係。

步驟2:在CSV數據中添加兩列。第一列包含值1並引用Core Data的P_OPT,第二列包含表的標識符和通過讀取表Z_PRIMARYKEY中的SQLite核心數據生成的檢索P_ENT。

第3步:使用任何編輯器Mac將您的數據轉換爲由Core Data生成的SQLite文件。請記住在臨時列中附加gl'ID(關係)。

步驟4:通過使用SQL UPDATE命令(可與Mac上的任何SQL編輯器一起使用)更新值爲Z_PK的Core Data中所有ID關係列。查詢檢索的值和使用臨時列。

對不起,英語不好。我希望不要因爲解釋而對其他人有用。

2

核心數據即使在使用SQLite存儲時也不是SQL。儘管理論上可以將標準SQLite文件轉換爲Core Data使用的模式,但是鑑於Apple不記錄模式並因此可以在不發出警告的情況下更改模式,這很困難且有風險。您確實需要將SQL數據轉換爲Core Data對象。

最好的方法是編寫一個包含您核心數據模型的實用程序應用程序。使用標準函數讀入SQL數據,然後使用該數據和關係在Core Data中創建適當的託管對象和對象關係。

通常你有代碼來創建託管對象,填充屬性和設置關係。只需使用該代碼,而不是從UI或Feed中提供數據,而是從SQL提供的數據中提供它。

+0

謝謝你的回覆。 – Luca 2011-02-26 13:03:48