2011-05-16 61 views
2

我建立一个本地数据库与此:显示行的总数在SQLite表

var db = openDatabase('LIST','1.0','database', 2*1024*1024); 

db.transaction(function (tx) { 
    tx.executeSql('CREATE TABLE IF NOT EXISTS entry (ID INTEGER PRIMARY KEY ASC, first TEXT, last TEXT, email TEXT, phone TEXT, contest TEXT, added_on DATETIME)'); 
}); 

db.transaction(function(tx){ 
    tx.executeSql('INSERT INTO entry (first, last, email, phone, contest, added_on) VALUES (?,?,?,?,?,?)', 
    [vFirst, vLast, vEmail, vPhone, vContest, addedOn]); 
}); 

我将如何填充与数据库中的总行数的DIV?我想我会使用像SELECT COUNT(*) FROM entry ..但我不清楚如何写这个或在页面上打印输出。

如果我使用本地存储,我看到我可以做一些简单的事情,如var length = window.localStorage.length;,但我无法弄清楚如何做与SQL类似的事情。

+0

为了清楚起见,你想要从* database *还是从'entry'表中的所有行?另外,你使用的是什么JavaScript框架/库? – 2011-05-16 20:38:51

+0

我使用jQuery和是刚刚从条目表..但现在我只能用一个数据库的工作。我更新了我的问题,包括数据库的建立也.. – Zac 2011-05-16 20:41:42

回答

5

如果你想如果你想知道在数据库中的行数从entry表计数中的所有行,然后SELECT COUNT(*) FROM entry ,然后UNION从不同的表,和查询使用SUM()

编辑:

db.transaction(function(tx) { 
    tx.executeSql("SELECT COUNT(*) FROM entry", [], 
     function(tx, result) { 
     //console.log(result.rows); 
     console.log(result.rows.item(0)["count(*)"]); 

     // do the html stuff to push this value to div 
     }, 
     function(tx, error){ 
     // error occured 
     } 
    ); 
}); 
+0

感谢我的问题,虽然是搞清楚实际显示那数。能否请你告诉我如何做到这一点写 – Zac 2011-05-16 20:47:47

+0

不是一个JavaScript的家伙,但也许这代码可以帮助,没有经过测试!编辑我的回答 – evilone 2011-05-16 21:00:30

+0

嗯感谢..我在控制台中看到,虽然它只是返回1> SQLResultSetRowList长的长度:1,但我有超过30个测试项目... – Zac 2011-05-16 21:18:04