如何将XML解析的内容插入到sqlite3数据库

问题描述:

我是iphone开发新手。我想插入我的XML解析内容到sqlite3数据库中,并检索它并将其显示在tableView.I能够解析并直接显示内容使用nsxml解析器。请帮助我如何继续将内容存储在数据库中并检索它。谢谢。如何将XML解析的内容插入到sqlite3数据库

你应该考虑使用Core Data而不是sqlite3。它为您自动管理大部分困难工作,并有效地将其加载到TableView。

您可以离线解析(即不在iPhone应用程序中)或在线解析(即在iPhone应用程序中)。这取决于您是否需要在运行时向应用程序提供XML。

如果你只是对SQLite数据库中的XML文件的内容感兴趣,那么我建议离线解析,因为你的应用运行速度会更快,因为它不会在每次启动时解析XML 。正如Hoang所说,如果可能的话,你应该考虑使用Core Data,它可以使用SQLite作为它的后备存储。这取决于您的应用是否需要在Pre-OS 3.x设备上运行,因为Core Data仅在iPhone OS 3.0b及更高版本中可用。核心数据使得处理数据库变得非常容易,并且提供了一些简洁的小东西来使构建应用程序更简单(如NSFetchedResultsController)。

几个月前我问了a similar question。根据我得到的答复,我编写了一个基于Cocoa的命令行实用程序,我将其运行以将我的数据预处理为SQLite数据库表单,而我的iPhone应用程序项目只是将其包含为另一个资源。由于您已经在使用NSXMLParser,我的猜测是大部分解析代码应该可以通过复制粘贴轻松“移植”。

在使用它之前,请确保已阅读Core Data Programming Guide。

这不是初学者很容易理解的东西。

您的项目和Apple的示例代码可能有不同的情况。还要注意性能,特别是在设备上。