iPhone 的 Sqlite3 替代品

luv*_*ere 0 sqlite iphone

除了sqlite3之外,还有其他可以在iPhone上使用的数据库引擎吗?像textDb这样的东西适用于 PHP,单文件且无服务器。

bbu*_*bum 5

SQLite 有很多替代品,但正如其他人指出的那样,使用它们没有什么意义。

在指出一些替代方案之前,先说明几点:

首先,SQLite 是一个优秀的单文件、非客户端服务器、占用空间小的 SQL 数据库。性能非常出色,运行时间相对较小,而且速度非常快。没有一种嵌入式 SQL 解释替代方案既在技术上全面优越,又在任何地方都同样受欢迎。

其次,如果您在 iPhone 应用程序中进行持久性处理,那么您很可能应该使用 CoreData。当然有不这样做的理由,但这种情况相当罕见。除了是到与 Cocoa Touch 完美集成的关系存储的更高级别映射之外,Core Data 还解决了持久性之外的许多非常困难的问题;对象图管理、高效内存使用(即,当不再需要时将内容推出内存)以及撤消支持等等。

最后,如果您决定使用其他数据库持久层,请记住 iPhone 3G 及更早版本是内存极其受限的运行时环境。任何类型的附加库的存在都会显着减少应用程序可用的工作内存。无论您选择什么解决方案,请确保对其进行优化以使用尽可能少的内存。

所以,说真的,如果您不想使用SQLite 或 CoreData,那要么是因为在极少数情况下它们不合适,要么是因为您很好奇。如果好奇,那么...对你有好处!

如果您正在寻找替代品,SQLite 文档包含一组类似产品的链接

列表相当稀疏,并不是因为作者隐藏了任何东西。业界根本没有太多动力尝试重新发明这个特殊的轮子,因为SQLite 做得非常好。Google、Adobe、GE、FireFox、Microsoft、Sun、REALBasic、Skype、Symbian、Apple 和其他公司在 SQLite 上进行了相当多的标准化来解决其非客户端/服务器关系持久性需求, 这是有原因的;它就是有效的。