【发布时间】:2014-02-16 14:16:55
【问题描述】:
我有一个云应用程序,它完全依赖后端服务器上的 SQL。我现在希望创建另一个应用程序,它首先使用核心数据将数据保存在 ipad 中,并且每当用户可以访问互联网时自动将我的核心数据映射到服务器。
我在将数据库表移植到核心数据实体时遇到问题。
- 我有一个
products表,它将存储具有name、price、product id等属性的产品 - 我有一个
orderLines表,该表将存储来自特定order的单个项目,具有以下属性:product、orderline_quantityOrdered、orderLine_totalPriceAtCheckOut、OrderId。订单 ID 用于跟踪订单行关联到的订单。 - 然后我们有
orders表,它只存储有关购买的信息,例如customer_id、OrderId- 由orderlines表用来建立关系,datePurchased、totalOrderAmount。李>
现在在将它实现到 coreData 之前,我知道我不需要创建主键 id,因为 Core Data 已经有自己的方式来识别具有自己的 id 属性的行,它为我创建的每个实体实现。
但是我将如何与OrderId 建立从order 到orderlines 表的关系。它将有一个one to many relationship,这就是我连接两者的方式。
//Example of orders table in the backend database
OrderId = 1, purchasedate, customer, orderTotalAmount
OrderId = 3, purchasedate, customer, orderTotalAmount
OrderId = 5, purchasedate, customer, orderTotalAmount
//Example of orderlines table in the backend databaset
oL_Id = 1, OrderId = 1, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
oL_Id = 2, OrderId = 1, productNameAtTimeOfPurhchase, productPriceATOP, quantity, subTotal
oL_Id = 3, OrderId = 1, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
oL_Id = 4, OrderId = 3, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
oL_Id = 7, OrderId = 3, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
oL_Id = 8, OrderId = 3, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
oL_Id = 10, OrderId = 5, productNameAtTimeOfPurchase, productPriceATOP, quantity, subTotal
我知道 CoreData 不是 ORM,这很好,但如果有人可以指导我设置这个 Core 数据实体,那就太好了。 我不是初学者,之前在其他项目中处理过Core Data,现在需要在interface builder的实体编辑中实现一个关系。谢谢
【问题讨论】:
标签: ios objective-c core-data ios7 entity-relationship