android - 哪一个适用于 Android 数据库?

标签 android mysql database sqlite

我需要您有关 Android 数据库的帮助。我一直在设计一种 session 应用程序。 我对使用 MySql 或 SQLite 或两者都很困惑。据我所知,SqLite提供本地DBase。不过,我的应用程序将被发布,任何人都可以使用它。 我的问题是, 对于这个应用程序,我应该选择哪一个以及哪个数据库管理系统适合我的应用程序?

感谢您的帮助。

最佳答案

SQLite 非常适合测试和原型(prototype)设计,或嵌入应用程序。 MySQL 值得(大规模)生产环境使用。

When to use SQLite?

对于 Android SQLite 是最好的选择。您可以在 SQLite 中外部创建数据库,然后将其复制到应用程序的 Assets 文件夹中并直接使用它。

这确实是一个设计决策,SQLite 提供了一种非常强大的方式来组织和保存数据,您唯一的选择就是写入文件或保存在 SharedPrefs 中,一旦这两种方法都变得更难以管理您的数据大小开始增长,因为您必须手动保存对象列表并管理它们的名称等。

优点:

  • 如果您的应用程序关闭,内存中的数据将会丢失,但之后您将能够从数据库中恢复状态(如果有的话)
  • 特别是对于复杂计算的情况,最好将结果存储在数据库中一次,而不是根据需要多次重新计算
  • 数据库会将您的 UI 与互联网连接解除绑定(bind),因此即使没有互联网连接,您也能够显示结果
  • 使用数据库,您将能够从后台服务获取更新的数据,而不会影响您的界面
  • 在数据库中组织数据通常可以更轻松地管理所有应用数据。

缺点:

  • 添加数据库需要您付出一些额外的努力

关于android - 哪一个适用于 Android 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20397942/

相关文章:

mysql - 直接同步来自不同供应商的两个数据库? (甲骨文和MySQL)

android - 从编辑文本中提取信息到另一个 Activity ?

php - 验证三个字段以检查重复项

mysql - 如何使用 Python 连接到远程数据库服务器?

database - 分布式架构中的 OrientDB 是否可以跨服务器进行顶点复制?

mysql - 循环检查从一张表到另一张表的where条件

android - 在 Android 应用程序中向 Activity 添加新 fragment 时出错

android - 为什么我的 Activity 是 logcat ="WIN DEATH Killing ProcessRecord"当我将 sd 卡安装到计算机时

android - 将按钮 onClick 传递回主要 Activity 的最佳方式?

php - 使用 PHP/Laravel 查询循环