2010-01-05 24 views
0

有没有人对mapkit使用数据存储来提供可以按位置查询的位置(餐馆)数据库有任何建议?将数据存储与Mapkit结合起来

我想使用核心数据,但将信息导入它看起来像是一个项目本身。如果任何人有转换现有的sqlite/cvs文件到coredata sqlite文件,将不胜感激良好的意见。

老式的sqlite比使用核心数据的任务更好,还是我应该为这项工作创建一个Web服务?

我希望能够根据地图缩放查询位置。

如果您对此事有任何建议,谢谢。

回答

0

如果您正确编写对象模型,则可以将其指向现有的sqLite数据库,并将其作为核心数据首先生成的数据读取它。

例如,假设你有一个像firstName,lastName,phone#等列的人的现有sqlite数据库。你只需创建一个具有firstName,lastName,phone#等属性的核心数据模型。相同并确保它们具有正确的类型,然后将 NSPersistentStoreCoordinator指向现有数据库。它会读取它的罚款。

核心数据始终是进行任何大型数据管理任务的方式。一旦你了解它,一切都会变得更加简单。


Edit01:

没关系以上。我正在考虑Enterprise Objects。核心数据不会轻易导入大多数现有的SQL。

相反,我会将sqlite导出到csv,然后使用类似cCSVParse的东西转换为plist。然后,您可以轻松将其读取到数组或字典中,并使用它来填充核心数据数据库。

这对于不依赖复杂关系的db很容易。我认为拥有核心数据的未来收益最终很容易支付花费在转换上的时间。

+0

感谢TechZen。我试过这样做,但我很确定Core Data不能识别它,因为现有的sqlite数据库没有Core Data生成的表格,也没有用大写字母Z作为前缀。我是否缺少什么? – user233867 2010-01-06 09:07:32

+0

感谢TechZen回答。你自己做过吗?我还没有在网上找到这个工作的例子。 似乎疯狂必须从Sqlite - > CSV - > Plist - >数组 - >核心数据。苹果如何期望人们将数据加载到我想知道的程序中? – user233867 2010-01-07 14:04:02

+0

您可以使用企业对象中的现有数据库,这是Core Data演变而来的。我认为他们如此优化CD的速度,使其可以更有效地使用通用数据库。它专注于应用程序生成的数据。你的权利,这是相当明显的弱点。 – TechZen 2010-01-08 13:15:11