如何在phonegap中打开现有数据库

Posted

技术标签:

【中文标题】如何在phonegap中打开现有数据库【英文标题】:How to open an existing database in phonegap 【发布时间】:2015-03-24 20:00:56 【问题描述】:

我想在我的 .js 文件所在的文件夹中打开一个名为 qw.db 的数据库 但是,似乎它创建了一个新文件 qw 而不是打开我自己的 db 文件 这是我的代码

function onDeviceReady() 

        var shortName = 'qw';
        var version = '1.0';
        var displayName = 'qwq';
        var maxSize = 65535;
        if (!window.openDatabase) 
            alert('!! Databases are not supported in this Device !! \n\n We are sorry for the inconvenience and are currently working on a version that will work on your phone');
        
        db = openDatabase(shortName, version, displayName, maxSize);
        createAllTables(db);


    


    function createAllTables(db)
        db.transaction(function (transaction) 
            transaction.executeSql("CREATE TABLE IF NOT EXISTS model(ModelId INTEGER PRIMARY KEY AUTOINCREMENT,ModelNumber varchr(50))");
        );
        db.transaction(function(transaction)
            var rowCount = 'SELECT * FROM model';
            transaction.executeSql(rowCount,[],function(transaction,result)
                if(result.rows.length == 0)
                    var sqlString = 'INSERT INTO model (ModelId,ModelNumber) VALUES("200","Female")';
                    transaction.executeSql(sqlString);

                
            );
        );
    

如果需要,这里是一个参考Phonegap Offline Database

【问题讨论】:

查看此链接:***.com/questions/27187826/… @Ved 似乎是专门为 android 设计的。我希望我的应用适用于 android、ios 和 windows 设备。 好的 .. 看我的另一篇文章:***.com/questions/26629244/… 【参考方案1】:

对于现有数据库,您必须将 db 文件复制到文档目录或应用程序目录。您可以使用 cordova-plugin-dbcopy 将 SQLite 数据库从 www 复制到应用程序目录

【讨论】:

我正在使用 Visual Studio cordova 插件,那里没有 www 文件夹 你可以试试这个smile-sa.github.io/cordova-plugin-websqldatabase-initializer 告诉我...

以上是关于如何在phonegap中打开现有数据库的主要内容,如果未能解决你的问题,请参考以下文章

PhoneGap 2.5.0,如何打开 iPad/iPhone 的外部 URL?

如何使用 iOS 的 phonegap 在弹出窗口中打开 PDF 文件

PhoneGap 包装现有网站

如何随时从服务器端访问phonegap应用程序

如何使用手机的本机应用程序打开图像 - Cordova / phonegap

phonegap 在浏览器中打开链接