Android中有哪些类型的数据库?

时间:2011-04-06 10:48:03

标签: android database sqlite

大家都可以说为什么我应该为我的移动应用程序使用SQLite数据库?我可以使用任何数据库吗?

5 个答案:

答案 0 :(得分:3)

SQLite数据库是要走的路: - )

粉碎杂志上周发表了一篇关于它的好文章

http://www.smashingmagazine.com/2011/03/28/get-started-developing-for-android-with-eclipse-reloaded/

答案 1 :(得分:2)

另一个选项是Berkeley DB,它与SQLite一样,是一个轻量级,快速,可靠的数据库库。您可以通过以下几种方式在Android上使用Berkeley DB:

  1. 通过SQL API使用Berkeley DB作为SQLite的升级/替换。 BDB SQL API完全兼容SQLite,因此您的SQLite应用程序应该能够非常轻松地转换为使用Berkeley DB。为什么要使用Berkeley DB而不是SQLite?在Android上,它主要是关于并发性的。 BDB支持并发读写操作。如果您的Android应用程序需要,那么BDB是一个很好的选择。在非Android平台上,BDB可扩展性,性能,HA和企业支持使其成为使用SQLite或考虑使用它的应用程序的有吸引力的替代方案。关于在Android here上使用BDB SQL API,有关OTN的有用讨论。
  2. 通过键值API将Berkeley DB用作简单的本地数据存储。
  3. 通过键值,Java集合或直接持久层API使用Berkeley DB Java Edition来管理纯Java环境中的应用程序数据。这是关于在Android上使用Berkeley DB JE的有趣Blog条目。
  4. 免责声明:我是Berkeley DB的产品经理。也就是说,我们认为SQLite是一个很棒的产品(我们是SQLite Consortium的一部分),我们很高兴看到人们采用和使用它。在某些情况下,伯克利数据库可能是更好的选择,因此我的建议在这里。

答案 2 :(得分:0)

人们普遍认为SQLite是Android的最佳数据库平台,因为它的重量轻,非常适合处理能力和内存有限的移动设备。

这并不是说你不能这样做,最终它是Java。您可以编写自己的,或查找开源代码,以便使用其他数据库。问题在于手机还必须有一个数据库守护程序来处理请求,而在SQLite中,数据库是存储在手机上的文件,因此可以用Java轻松访问。

在一天结束时,尝试在手机上运行MySQL守护进程是愚蠢的,因为我非常怀疑它有内存可以应付。你习惯SQLite会好得多,因为它是一个非常灵活和流行的数据库平台。

答案 3 :(得分:0)

正如另一个答案中所提到的,您可以交叉编译Berkeley DB for Android并使用Java Bindings,包括它作为.apk中的.so本地库(以〜710k打包)。有一个循序渐进的指南here(因为它需要稍微调整)。

答案 4 :(得分:0)

您也可以使用DB4O数据库。如需更多帮助,您可以查看他们的网站。 http://www.db4o.com/(S(tqvrulmp3ybmtw55i3mgop55))/Android/default.aspx