2011-02-02 97 views
1

我有3個表格。關係數據庫 - > CoreData

Classes 
--------------- 
classid 
name 
description 

Sessions 
--------------- 
sessionid 
name 
start 
end 

Schedule 
--------------- 
scheduleid 
name 
start 
end 
classid 
sessionid 

我知道如何在關係數據庫中處理這件事,但只要將它們設置爲實體..我不知道這需要/應該是主要對象...

回答

2

你所說的「主要目標」是指什麼?這只是一個實體和對象的圖形。在這種情況下,您應該爲每個表(單數:Class,Session,Schedule)擁有一個實體,併爲外鍵提供實際數據和關係的屬性。

您不能手動指定主鍵,CoreData會這樣做(這是一個實現細節)。

所以你可能有這樣的事情:

  • 名稱(字符串)
  • 描述(字符串)
  • 時間表(一對多的關係附表)

Session

  • 名稱(字符串)
  • 開始(日期)
  • 結束(日期)
  • 時間表(一對多的關係附表)

附表

  • 名稱(字符串)
  • 開始(日期)
  • end(dat E)
  • 類((反向)關係類)
  • 會議((反向)性的關係,以會議)

我可以推薦蘋果自家的CoreData文件,特別是對數據建模工具中的章節Xcode中。實際上可以使用Xcode繪製數據模型,併爲您自動生成(可選的)類聲明。

+0

「你不能手動指定主鍵,CoreData會這樣做(它是一個實現細節)」Apple刪除了``Id``鍵的可能性並迫使開發者根據自然鍵思考!我喜歡它 ! – PerformanceDBA 2011-02-03 07:23:40

0

主要的對象是你的日程安排。 你有一個時間表,有

-id 
-name 
-start 
-end 
-Class (or IList<Class>) 
-Session (or Ilist<Session>)