我在SQLite表中为更新记录编写此函数,它不起作用,我不能理解为什么,thx
function UpdateValues() {
var id=document.getElementById("id").value;
var mydata=document.getElementById("CommonName").value;
var mydata2=document.getElementById("location").value;
var mydata3=document.getElementById("datte").value;
var mydata4=document.getElementById("Observations").value;
var db = openDatabase('birdsdata1','1.0', 'Test DB', 2 * 1024 * 1024);
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS birdstabla1 (RegNum INTEGER
PRIMARY KEY, CommonName CHAR(17), location CHAR(32), datte CHAR(10),
Observations CHAR(90))');
tx.executeSql('UPDATE birdstabla1 SET (location, Observations) VALUES (?, ?)
WHERE RegNum=?', [mydata, mydata2, id], functerr);
});
}
答案 0 :(得分:4)
您的代码中存在许多错误,但导致失败的错误是您的UPDATE
语句使用了错误的语法。
阅读documentation。
tx.executeSql('UPDATE birdstabla1' +
' SET location = ?, Observations = ?' +
' WHERE RegNum = ?',
[mydata2, mydata4, id]);