我正在尝试创建一个简单的文字游戏,其中包含可以通过网站更新的单词数据库(可以预加载或可由用户加载)。我找到了this示例,我得到了它的工作。但是,如果我有一个现有的数据库,它将无法工作。我是这类编程的新手,所以我现在已经做了2天的研究了。
var db = openDatabase('db.sqlite', '1.0', 'Test DB', 2 * 1024 * 1024);
var msg;
/*
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS vocabList(id unique, word, definition, weekNO)');
msg = '<p>Log message created and row inserted.</p>';
document.querySelector('#status').innerHTML = msg;
});
*/
我对此进行了评论,以防止创建数据库(我应该没有这样做吗?)
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM vocabList WHERE weekNO = 1', [], function(tx, results) {
var len = results.rows.length,
i;
msg = "<p>Found rows: " + len + "</p>";
document.querySelector('#status').innerHTML += msg;
for (i = 0; i < len; i++) {
msg = "<p><b>" + results.rows.item(i).word + "</b></p>";
document.querySelector('#status').innerHTML += msg;
}
}, null);
});
如果还有其他更有效的方法,请指出正确的方向。
答案 0 :(得分:0)
我不确定你遇到了什么问题。但是在您的代码中,您注释掉了检查表是否已创建的部分。从注释掉的代码中,也没有插入任何行,因此它是一个空白数据库。
我在此处修改了您的代码:http://jsfiddle.net/Ae8m2/
我取消了你的创作部分,并添加了几行。
答案 1 :(得分:0)
您正在创建/连接的数据库是客户端数据库。如果要连接到后端数据库,则应使用服务器语言,例如php
。
您可能希望使用ajax连接到数据库并执行请求。