无法在Android中使用PhoneGapCordova访问预先填充的SQLite数据库

无法在Android中使用PhoneGapCordova访问预先填充的SQLite数据库,第1张

概述我们正在尝试使用PhoneGap/Cordova创建移动应用.我们需要使用预先填充的SQLite数据库发送此应用程序.我们可以使用以下代码复制数据库.但是当我们尝试在我们的应用程序中从复制的DB访问表时,我们得到“NoSuchTable”错误.任何人都可以帮助我们确定原因吗?我们使用以下代码将数

我们正在尝试使用PhoneGap / Cordova创建移动应用.我们需要使用预先填充的sqlite数据库发送此应用程序.我们可以使用以下代码复制数据库.但是当我们尝试在我们的应用程序中从复制的DB访问表时,我们得到“No Such table”错误.任何人都可以帮助我们确定原因吗?

我们使用以下代码将数据库复制到data / data / package_name / databases文件夹.

   try    {        file dbfile = getDatabasePath("Bee_dict.db");        if(!dbfile.exists()){            this.copy("Bee_dict.db",dbfile.getabsolutePath());        }     }     catch (Exception e)     {     e.printstacktrace();     }//And our copy function:   voID copy(String file, String folder) throws IOException    {     file CheckDirectory;     CheckDirectory = new file(folder);     String parentPath = CheckDirectory.getParent();     file filedir = new file(parentPath);     if (!filedir.exists()) {         if (!filedir.mkdirs()) {             return;         }     }        inputStream in = this.getApplicationContext().getAssets().open(file);        file newfile = new file(folder);        OutputStream out = new fileOutputStream(newfile);        byte[] buf = new byte[1024];        int len; while ((len = in.read(buf)) > 0) out.write(buf, 0, len);        in.close(); out.close();    }

的index.HTML
以下代码用于打开和访问数据库

 function onDeviceReady() {  db = window.openDatabase("Bee_dict", "1.0", "Bee_dict", 20000);  tx.executesql('SELECT * FROM data WHERE word_ID = ?', [1], querySuccess_deFinition, errorCB); }

科尔多瓦版 – 2.9

谢谢.

解决方法:

首先,可以尝试使用下一个DB文件名:

0000000000000001.db

对于加载文件:

file dbfile = getDatabasePath(".0000000000000001db");

DB文件需要位于下一个路径中:

yourProyect/assets/0000000000000001.db

我建议使用“sqlitePlugin”:

SQLitePlugin GitHub

在“onDeviceReady()”函数中我使用:

if(!dbCreated){    db = window.sqlitePlugin.openDatabase("0000000000000001", "1.0", "My Database", -1);}
总结

以上是内存溢出为你收集整理的无法在Android中使用PhoneGap / Cordova访问预先填充的SQLite数据库全部内容,希望文章能够帮你解决无法在Android中使用PhoneGap / Cordova访问预先填充的SQLite数据库所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1099616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存