2013-05-16 67 views
0

我必須在Objective-C中實現一種庫,它有助於將任何對象存儲在數據庫中,並進行自省。但是我在數據庫連接上遇到了一些麻煩。Objective-C數據庫連接

我發現一些教程上的OBJ-C的iPhone使用SQLite要做到這一點,但在應用程序不能在OSX。

我想提供一個Sqlite連接和一個MySql連接(以滿足用戶的偏好)。是否可以在Objective-C命令行工具中執行此操作?如果是這樣,怎麼樣?

謝謝!

+0

什麼你真的* *要的是CoreData和[這裏有一個教程爲你(http://programming.wonderhowto.com/how-to/build-simple-core-data-application- MAC-OS-X-218962 /)。 –

回答

6

哇。這是一個強大的要求;有整個公司只專注於對象關係映射圖層。

沒有辦法,你可以通過內省只使用任意對象來做到這一點。首先,在運行時沒有足夠的元數據可以有效地序列化所有類型,更不用說將它們映射到數據庫。其次,即使存在,您仍然必須處理完整的對象圖表的多少。

你真的需要某種塑造用於專門介紹對象持久化,他們將如何被保留的信息的,有多少你需要堅持的對象圖。

I.e.您有效地要求重新發明EOF,它是CoreData的前身,它提供了一個更通用的Object to Relational映射層。

獲得關於你問的角度來看,我建議你閱讀Enterprise Objects Framework Development Guide的前幾章。

核心數據確實提供了一個incremental storage API,這將大大簡化您的實現目標,但會要求你作爲一個核心數據模型建模正確數據層。

+0

Thx幫助:)我會仔細閱讀! – user2236639

1

我不知道MySQL,但約sqlite的,你應該使用FMDB: FMDatabase FMDB可以使用適用於iOS,MAC OSX(ARC和非ARC) 這是偉大的框架。

好運

+0

非常感謝!我會用它:) – user2236639