【问题标题】:html5sql - Can't seem to connect to my DBhtml5sql - 似乎无法连接到我的数据库
【发布时间】:2012-11-02 22:15:08
【问题描述】:

我正在使用 html5sql.com 来做 html5 DB 的东西 :o) - 真是一个很棒的模块...

但是,我卡住了!

在我的 index.html/index.js 中,我在其中创建了我的数据库和表。

try {
        html5sql.openDatabase("com.dynamicvenues.fairkeyMobile.db","Questionnaire",3*1024*1024);
        html5sql.process(
                [
                 "CREATE TABLE IF NOT EXISTS Questionnaire (uid INTEGER, json TEXT, hash TEXT);",
                 "CREATE TABLE IF NOT EXISTS Answers (id INTEGER PRIMARY KEY, visitor_id TEXT, json TEXT);"
                ],
                function(){
                     console.log("Success Creating Tables");
                 },
                 function(error, statement){
                     console.error("Error: " + error.message + " when processing " + statement);
                 }        
        )
    } catch(error) {
        alert("Database create failed: "+error.message);
    }

在同一页面中,我用数据填充了一个表:

jQuery.get(serverHttp+"json.php?exhibitorID="+exhibitorID, function(data){
        var html = $(data).map(function() {
            return $(this).html();
        });
        var jsonStr = html[0];
        var exhibitorID = html[1];
        var hashStr = html[2];

        var SQL = "INSERT INTO Questionnaire (uid, json, hash) VALUES ("+exhibitorID+",'"+jsonStr+"','"+hashStr+"')";
        try {
            html5sql.process(SQL,
                    function(){
                        console.log('Inserted 1 row!');
                    },
                    function(){
                        console.error("Error: " + error.message + " when processing " + statement);
                    }
            )
        } catch(error) {
            alert("Query failed: "+error);
        }

现在,在另一个名为 questions.html/questionnaire.js 的页面中,我尝试检索存储在问卷调查表中的数据。

html5sql.process(
            ["SELECT * FROM Questionnaire;"],
            function(transaction, results, rowsArray){
                for(var i = 0; i < rowsArray.length; i++){
                    var uid = rowsArray[i].uid;
                    var json = rowsArray[i].json;
                    var hash = rowsArray[i].hash;
                    console.log("Retrieved rows: "+uid+" - "+json+" "+hash);
                }
                console.log("Done selecting data");
            },
            function(error, statement){
                console.error(error.message+" Occured while processing: "+statement);
            }
       );

我做错了什么???

问候, 丹尼尔

【问题讨论】:

标签: javascript jquery html sqlite web-storage


【解决方案1】:

解决了!插入:html5sql.openDatabase("com.dynamicvenues.fairkeyMobile.db","Questionnaire",3*102‌​4*1024); 之前 html5sql.process() 在问卷.js

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-31
    • 2021-12-27
    • 1970-01-01
    • 2012-03-24
    • 2011-05-17
    • 2013-01-05
    • 1970-01-01
    • 2016-02-10
    相关资源
    最近更新 更多