访问外部创建的SQLite数据库

时间:2016-05-05 10:36:57

标签: angularjs sqlite cordova hybrid-mobile-app telerik-appbuilder

我正在使用visual studio中的telerik app builder创建一个混合应用程序。我无法访问外部创建的sqlite db。但我可以访问在运行时创建的数据库。我提到了一些网站,这些解决方案并不适合我。以下代码将创建db并在运行时访问它

var app = {};
app.db = null;

app.openDb = function () {
    var dbName = "Test.sqlite";

    //DB creation for Simulator
    if (window.navigator.simulator === true) {
        app.db = window.openDatabase(dbName, "1.0", "Test Database", 1073741824);
        console.log("Database Created!");
    }
    //DB creation for devices
    else {
        app.db = window.sqlitePlugin.openDatabase(dbName);
        console.log("Database Accessed!");
    }
}

我想访问数据文件夹中的数据库。请参考图片。

enter image description here

我尝试将数据库放在www文件夹中,并尝试通过以下代码访问它

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

会出现以下错误

Uncaught TypeError: Cannot read property 'openDatabase' of undefined

那么,我如何访问外部创建的sqlite db?

我在项目中包含了以下脚本

 <script src="js/jquery-2.1.0.min.js"></script>
 <script src="js/angular.min.js"></script>
 <script src="js/ng-cordova.min.js"></script>

1 个答案:

答案 0 :(得分:1)

看起来您的问题是window.sqlitePlugin未定义。你确定插件安装正确吗?此外,您必须等到deviceReady事件才能使用window.sqlitePlugin