【问题标题】:How to update database from server如何从服务器更新数据库
【发布时间】:2011-10-12 10:27:08
【问题描述】:

我正在制作一个 Android 应用程序,但我遇到了问题。我不知道从我的服务器更新客户端应用程序中的数据库的最佳方法是什么(如果用户单击“检查更新”按钮)。我应该如何在客户端设置当前数据库版本,以便我可以尝试与服务器中的最新数据库版本进行比较?如果有任何新的数据库更新,我应该如何从服务器检查?我应该使用 PHP / java 服务器吗?

我的情况: 用户安装了我的带有 sqlite 数据库版本 1.0 的应用程序 但后来,我将 sqlite 数据库更新到 2.0 版并将其上传到服务器(我还没有考虑过我将使用什么样的服务器,任何想法(java 或 php)?) 我希望当用户单击“检查更新”时,应用程序将检查最新的数据库版本,如果最新的数据库版本是 2.0(>1.0),那么它将下载并替换旧的 sqlite db(1.0)。 我应该如何在客户端(Android)中设置 sqlite 数据库版本并将其与服务器端的最新版本进行比较?

任何帮助将不胜感激。 谢谢 !

【问题讨论】:

  • 我假设您想要更新数据库中的数据,而不是实际的数据库本身(因为您在问我应该如何设置当前数据库版本)。 PHP还是Java?那是你的决定。两种语言/技术都可以胜任...
  • 我编辑了标题。我的意思是更新数据库本身,而不是数据。不过谢谢
  • 这个问题还是有点模糊......你可能有更准确的回答你添加一个清晰而详细的描述你试图通过一些例子实现的目标
  • 我添加了更多关于我想要实现的目标的解释。谢谢:)

标签: android database


【解决方案1】:

根据您对this answer的评论...

如果您的问题如此简单,我建议您执行以下操作:

  • 通过 HTTP 向您的服务器请求最新的数据库状态(它可以返回时间戳或数据库版本),例如与http://www.yourserver.tld/?dbversion
  • 如果您的本地数据库小于返回的时间戳或版本,则您从服务器中提取数据库,例如与http://www.yourserver.tld/?dbget
  • 之后,您保留时间戳或版本(例如在共享首选项中)

您的服务器始终知道哪个版本是最新的,并且可以更新返回的时间戳或返回的(和递增的)版本号...

PHP 或 Java:我会推荐 PHP 来完成这样一个简单的任务(也因为每个网络空间都提供该选项)。我会通过一个简单的 GET 请求来实现这一点(如前所述)。 Java 只是矫枉过正(但仍有可能)。

【讨论】:

  • 太棒了!我想我会按照你的方式去做!谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-16
  • 1970-01-01
相关资源
最近更新 更多