从sqlite数据库读取信息,语法?如何在HTML5 WebApp中使用它?
-
30-09-2019 - |
题
我有一个我正在构建的WebApp,并且刚刚从SQLite开始。我已经能够创建我的表单,打开创建的数据库,创建表格和所需的字段,然后将数据输入到字段中。
现在,我正在尝试使用SELECT语句读取数据,以在屏幕上和作为列列表中显示。我只是不知道JavaScript或HTML5超出javascript或HTML5中的选择语法
“从mytable中进行选择” ...我知道可以做到这一点,只需要在将结果传播到屏幕上的语法时就需要一些帮助即可。
我从此开始。
var db = window.openDatabase('TabOrder', '', 'Bar Tab Orders', 2500000);
function insertDrinks(category, drinkname, our_cost, cust_cost){
db.transaction(function(tx){
tx.executeSql('INSERT INTO Drinks (category, drinkname, our_cost, cust_cost) VALUES (?, ?, ?, ?)', [category, drinkname, out_cost, cust_cost]);
});
}
$(document).ready(function() {
db.transaction(function(tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS Drinks(id INTEGER PRIMARY KEY Autonumber, category TEXT, drinkname TEXT, our_cost FLOAT(6,2), cust_cost FLOAT(7,2))', []);
});
});
我后来有这个...
View Cat / Drink List
function readDrinks(id, category, drinkname, our_cost, cust_cost){
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM Drinks', [id, category, drinkname, our_cost, cust_cost]);
});
document.write(id, category + " are the categories.");
}
我只是试图将它们拼凑在一起,不知道我在基本SQL之外做什么。
任何帮助都非常感谢...这是针对客户端DB的,而不是连接到网络的人。
谢谢....
解决方案
看 规格 还有这个 苹果教程. 。简而言之,您需要添加数据和错误回调。另外,您应该传递一个空数组(或空),因为您的查询没有参数。
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM Drinks',
[],
function(tx, results)
{
// results is a http://dev.w3.org/html5/webdatabase/#sqlresultset .
// It has insertId, rowsAffected, and rows, which is
// essentially (not exactly) an array of arrays.
},
function(tx, error)
{
}
);
});
是使用命名或匿名功能取决于您。
编辑:我在 http://jsfiddle.net/wcv6y/7/ 。它在Chrome 5.0.375.70中进行了测试。
其他提示
尝试这样的事情
tx.executeSql('SELECT * FROM foo', [], function (tx, results) {
var len = results.rows.length;
for (var i = 0; i < len; ++i) {
var obj = results.rows.item(i);
alert(obj);
}
});
另请参阅此简短教程 http://html5doctor.com/introducing-web-sql-databases/
不隶属于 StackOverflow