我必须在哪里放置sql lite数据库,以便与使用类似于以下sql lite脚本的应用程序一起使用来访问它? :

function GetComuni(dbName,sqlStmt)
{
    try
    {
        if (!window.openDatabase) {
            alert('Databases are not supported on this device. Sorry', 'error');
        } else {
            var db;
            var version = '1.0';
            var maxSize = 102400;

            db = window.openDatabase(dbName, version, dbName, maxSize);

            db.transaction(
                function (tx) {
                    tx.executeSql(sqlStmt, [], function (tx, result) {
                            var schemanode = document.GetElementById('COMUNI');
                            schemanode.innerHTML = "";
                            dataset = result.rows;
                            for (var i = 0, item = null; i < dataset.length; i++) {
                                item = dataset.item(i);
                                var notediv = document.createElement('div');
                                notediv.innerHTML = 'Codice Provincia:' + item['PROVINCIA'] + 'Nome:' + item['NAME'];
                                schemanode.appendchild(notediv);
                            }
                        }
                    )
                }
            )
        }
    }
    catch(ex)
    {
        alert(ex);
    }
}


提前致谢,
西蒙妮

最佳答案

您无需将数据库放在任何地方。当您的应用程序调用window.openDatabase()时,系统将确定将数据库保存在何处。

但是,我确实在您的代码段中看到了问题。您在db = window.openDatabase()之后立即调用db.transaction。由于这两个语句都是异步的,因此不能保证在启动事务时已打开数据库。

这是一个可以帮助您入门的工作示例?
http://blackberry.github.com/WebWorks-Samples/kitchenSink/js/html5/webdb.js

关于javascript - 适用于Black Berry的Ripple Emulator:如何使用sql lite?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14140281/

10-12 03:09