在HTML5页面中使用JavaScript连接到SQLite数据库

Using JavaScript in a HTML5 page to connect to a SQLite database

本文关键字:连接 JavaScript SQLite 数据库 HTML5      更新时间:2023-09-26

我想做一个简单的文字游戏,有一个词的数据库(这是预装的或可以由用户加载),可以通过网站更新。我找到了这个例子,并让它起作用了。然而,它不会工作,如果我有一个现有的数据库。我对这种编程很陌生,所以我已经研究了两天了。

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);
});

如果有其他更有效的方法,请告诉我正确的方向。

我不太确定你有什么问题。但是在您的代码中,您注释掉了检查表是否已创建的部分。从注释掉的代码中,也没有插入任何行,因此它是一个空白数据库。

我在这里修改了你的代码:http://jsfiddle.net/Ae8m2/

我取消了创建部分的注释,并添加了几行

您正在创建/连接的数据库是客户端数据库。如果要连接到后端数据库,则应该使用服务器语言,例如php

您可能希望使用ajax来连接到数据库并执行您的请求。