无法使用HTML 5保存数据

时间:2013-10-25 07:08:27

标签: html5 sqlite

   <html>
          <head>
            <script type="text/javascript"  src="js/cordova.js"></script>
            <script type="text/javascript" >
        document.addEventListener("deviceready", onDeviceReady, false);
          function populateDB(tx) {
                tx.executeSql('DROP TABLE IF EXISTS DEMO');
                tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
                tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
                tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
            }

            function queryDB(tx) {
                tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
            }
         function querySuccess(tx, results) {
                var len = results.rows.length;
                alert("DEMO table: " + len + " rows found.");
                for (var i=0; i<len; i++){
                    alert("Row = " + i + " ID = " + results.rows.item(i).id + " Data =  " + results.rows.item(i).data);
                }
            }


            function errorCB(err) {
                alert("Error processing SQL: "+err.code);
            }

            function successCB() {
                var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
                db.transaction(queryDB, errorCB);
            }


            function onDeviceReady() {
                var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
                db.transaction(populateDB, errorCB, successCB);

            }

            </script>
          </head>

        </html>

我运行上面的示例代码,使用HTML 5在sql lite数据库上保存数据 我在选项卡上运行代码。 。但是,当你尝试这个得到以下错误。但是成功地保存在数据库上。

10-25 14:40:31.246: E/SQLiteLog(2584): (1) no such table: DeletedCacheResources

1 个答案:

答案 0 :(得分:0)

冲突发生在以下两条线之间:

var db = window.openDatabase("Database", "1.0", "Cordova Demo",

tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)

你可能从两个不同的页面获得它们。