我只想计算数据库中的行数,但似乎显示了错误的值。确切地说,它总是返回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
答案 0 :(得分:1)
将@Entity
@Table(name = "Work")
public class Work implements java.io.Serializable {
@Id
@Column(name = "ID", unique = true, nullable = false, precision = 22, scale = 0)
// @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "WORK_SEQ")
// @SequenceGenerator(name = "WORK_SEQ", sequenceName = "WORK_SEQ", allocationSize = 1, initialValue = 1)
public BigDecimal getId() {
return this.Id;
}
@OneToMany(fetch = FetchType.LAZY, mappedBy = "work", cascade = CascadeType.ALL, orphanRemoval=true)
public Set<ExternalReference> getExternalReferences() {
return this.externalReferences;
}
}
更改为var countcomm = "SELECT COUNT(*) FROM Date";