【问题标题】:mysql to sqlite in codemysql到sqlite的代码
【发布时间】:2011-09-20 05:06:26
【问题描述】:

我需要拉出一个托管在服务器上的 mysql 数据库并将其放入使用 sqlite 的 Android 手机中。

我已经搜索了谷歌并且有一些选项虽然我不太确定哪一个最容易实现。

这里有一些信息:我的数据库包含 4 个表,大约 9000 条记录。我需要把它全部拉出来。

1.使用从 mysql 到 xml 的解析器,然后将 xml 写入 sqlite..考虑到我的 db 的大小,这可能或可行吗?

  1. 参考这个,http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

    私有静态字符串 DB_PATH = "/data/data/YOUR_PACKAGE/databases/";

    私有静态字符串 DB_NAME = "myDBName";

    我能否将 DB_PATH 指向托管在服务器中的 mysql 数据库,而不是应用程序存储的数据库?我已经在我自己的应用程序中使用数据库尝试了此代码,如果它是第一次运行,它确实将数据库复制到应用程序。

3.本质上,我将 mysql 复制到 sqlite db..谢谢大家:)

【问题讨论】:

  • 你需要实现任何解析
  • 所以解析实际上就像从 1 db 到另一种类型的 db 的转换器?这真的是我唯一的方法吗

标签: android mysql database sqlite export


【解决方案1】:

您需要实现任何解析。使用解析,您可以从特定 URL 获取数据并将其存储在本地数据库中。这也是将远程数据库存储到本地数据库的方式。

【讨论】:

    【解决方案2】:

    我能否将 DB_PATH 指向服务器中托管的 mysql 数据库 而不是应用程序存储的数据库?我

    绝对不是。 DB_PATH 是“sqlite 数据库文件”,sqlite 中没有数据库服务器。所以你不能只用 mysql 服务器替换它。

    我认为你需要:

    • 首先在主机上获取数据库的 sqldump
    • 将 mysql 语句转换为 sqlite(这应该很简单 除非您在 Sqlite 中使用缺少的 SQL92 功能,请参阅 this)(您可以使用 this 执行此操作)
    • 在本地数据库上执行转换后的 sql 语句

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-01
      • 2016-11-04
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      相关资源
      最近更新 更多