【问题标题】:Open prepopulated SQLite database in Cordova (for android) and Visual Studio在 Cordova(适用于 android)和 Visual Studio 中打开预填充的 SQLite 数据库
【发布时间】:2015-03-08 02:50:32
【问题描述】:

我正在使用 Visual Studio 2013 和 Cordova 工具包。

我的大部分应用程序都在工作,现在可以添加数据库逻辑了。我有一个充满引号的数据库,我需要将其绑定到应用程序中。

点击此链接:adding dynamic data with SQLite

我能够让 SQLite 与数据库对话 (using the sqlitePlugin) 但是,我不知道如何使用预填充的数据库。它总是创建一个新的空数据库。我在网上找到了几篇文章,一直在说“将 db 放入 www 文件夹”......但是 Cordova 项目没有 www 文件夹。

将 SQLite DB 文件放在根目录中不起作用,我尝试使用路径并将其放在子目录中。那里也没有运气。

有人能做到吗?

【问题讨论】:

标签: android visual-studio sqlite cordova


【解决方案1】:

老问题,但我会回答作为参考:我通过更改插件解决了这个问题。以前,我使用插件cordova-sqlite-storage (https://github.com/litehelpers/Cordova-sqlite-storage),但它不会复制预填充的数据库。它总是创建一个空的。

经过几天的战斗,我卸载了插件并安装了这个:cordova-plugin-sqlitehttps://www.npmjs.com/package/cordova-plugin-sqlite)。这就像一个魅力,它将www文件夹中的数据库复制到设备。只需按照说明进行操作,不要忘记createFromLocation 参数。

奇怪的是,这两个插件都来自同一作者,而且似乎都是活跃的项目。去图吧。

【讨论】:

  • cordova-plugin-sqlite 已“弃用”
【解决方案2】:

老问题,但我会回答作为参考(2)!

cordova-sqlite-ext 项目支持预填充的 SQLite。

步骤很简单:

  • 将数据库文件放到www目录下,打开数据库如:www/sample.db

然后,使用:

var db = window.sqlitePlugin.openDatabase({name: "sample.db", createFromLocation: 1});

更多信息:https://github.com/litehelpers/cordova-sqlite-ext#pre-populated-databases

许多站点和答案都指向为此使用 Cordova-sqlite-storage。事实上,这个特性在这个项目中,但它被移到了 Cordova-sqlite-ext (它们来自同一个创建者)。

我不推荐使用 cordova-plugin-sqlite。它已被弃用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    • 2015-11-24
    • 2016-01-27
    • 2015-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多