使用 PhoneGap 删除本地存储数据库中的一行时遇到了很大的麻烦。
当我调用函数 deleterow() 时,它会触发一条错误消息“未定义”。显然 errorCB() 函数被调用。该行未删除。
我所做的是通过这样的 HTML 锚标记调用我的函数。
<a onclick="deleterow('10')">Delete row</a>
function deleterow(id) {
db.transaction(function(ctx) {
ctx.executeSql('DELETE FROM <table> WHERE id=?', [id], successCB, errorCB);
});
}
OR
function deleterow(id) {
db.transaction(function(ctx) {
ctx.executeSql('DELETE FROM <table> WHERE id='+id+'', [], successCB, errorCB);
});
}
function errorCB(err) {
alert("Error processing SQL: "+err.code);
}
function successCB() {
alert("Row deleted");
}
我有以下工作示例:
INSERT
SELECT
UPDATE
CREATE
我很难相信删除不支持。
我是对的,还是我错过了什么?
我找到了一个解决方案:
function delete(id) {
db.transaction(function(ctx) {
ctx.executeSql('DELETE FROM manyrecipes WHERE rowid=?', [id], delete_success, errorCB);
});
}