【发布时间】:2011-04-06 10:48:03
【问题描述】:
大家好,谁能说说我为什么要为我的移动应用程序使用 SQLite 数据库?有没有我可以使用的数据库?
【问题讨论】:
-
不。您可以使用基于文件的记录系统甚至 XML,但这不是原生的,您必须自己开发。
-
SQLite 是 Android 自带的,非常好用..
大家好,谁能说说我为什么要为我的移动应用程序使用 SQLite 数据库?有没有我可以使用的数据库?
【问题讨论】:
SQLite 数据库 是要走的路 :-)
smashing 杂志上周发表了一篇很好的文章
http://www.smashingmagazine.com/2011/03/28/get-started-developing-for-android-with-eclipse-reloaded/
【讨论】:
另一个选择是 Berkeley DB,它和 SQLite 一样是一个轻量级、快速、可靠的数据库库。对于如何在 Android 上使用 Berkeley DB,您有几种不同的选择:
免责声明:我是 Berkeley DB 的产品经理。也就是说,我们认为 SQLite 是一个很棒的产品(我们是 SQLite 联盟的一部分),我们很高兴看到人们采用和使用它。在某些情况下,Berkeley DB 可能是更好的选择,因此我在这里提出了建议。
【讨论】:
人们普遍认为,SQLite 是适用于 Android 的最佳数据库平台,因为它重量轻,非常适合处理能力和内存有限的移动设备。
这并不是说你做不到,归根结底是 Java。您可以编写自己的代码,也可以找到开源代码,这样您就可以使用另一个数据库。问题是手机还必须有一个数据库守护进程来处理请求,而在 SQLite 中,数据库是存储在手机上的文件,因此可以很容易地用 Java 访问。
在一天结束时,尝试在手机上运行 MySQL 守护程序是很愚蠢的,因为我非常怀疑它是否有足够的内存来应对。习惯 SQLite 会更好,因为它是一个非常灵活和流行的数据库平台。
【讨论】:
正如另一个答案中提到的,您可以交叉编译 Berkeley DB for Android 并使用 Java 绑定,包括它作为 .apk 中的 .so 本机库(打包时约为 710k)。有一个分步指南here(因为它需要稍作调整)。
【讨论】:
您也可以使用 DB4O 数据库。如需更多帮助,您可以查看他们的网站。 http://www.db4o.com/(S(tqvrulmp3ybmtw55i3mgop55))/Android/default.aspx
【讨论】: