【发布时间】:2018-07-27 16:41:32
【问题描述】:
我只想计算数据库中的行数,但它似乎显示了错误的值。准确地说,它总是返回 1。
HTML 代码:
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
</head>
<body>
<input type="date" id="dt">
<input type="button" id="submit" value="INSERT DATE">
<input type="button" id="count" value="count">
</body>
<script type="text/javascript" src="js/index.js"></script>
</html>
还有 JavaScript:
var db = openDatabase("Dates", "1.0", "Test Dates", 200000);
var createStatement = "CREATE TABLE IF NOT EXISTS Date (sampledate DATE)";
var insertStatement = "INSERT INTO Date (sampledate) VALUES (?)";
var countcomm = "SELECT COUNT(*) FROM Date";
var dataset;
db.transaction(function(xd)
{
xd.executeSql(createStatement, []);
});
$(document).ready(function()
{
$("body").fadeIn(2000);
$("#submit").click(insertdate);
$("#count").click(countdates);
});
function countdates()
{
db.transaction(function(xd)
{
xd.executeSql(countcomm, [], function (xd, result) {
dataset = result.rows;
alert(dataset.length);
});
});
}
function insertdate()
{
var datetemp = $("#dt").val();
db.transaction(function(xd)
{
xd.executeSql(insertStatement, [datetemp])
})
alert("SUCCESS");
}
正如您在警报中看到的,它显示的计数值为 1,而由于数据库中有 5 行,因此预计显示为 5
【问题讨论】:
-
您需要查看行中的值。任何没有
group by的count()查询总是会返回一行。
标签: javascript html sql database