【发布时间】:2014-09-07 00:52:24
【问题描述】:
我想使用 Phonegap 在 SQLite 中插入更新和删除表的数据,我知道这样做的方式,但问题是每当我尝试插入相同的记录两次时,都会出现错误,这是完美的,但是当我两次删除同一行时,它每次都进入成功功能为什么会这样?更新函数也是如此,我不明白为什么会这样,我在代码中做了什么愚蠢的错误吗?请帮我 更新功能
db.transaction(function(tx){
var abc= "UPDATE table_name SET a= ? WHERE id = ?";
tx.executeSql(abc, [a, id],function SuccessUpdate(tx,result){
alert("success");
alert("Last inserted ID = " + result.insertId);
},
function errorUpdate(error){
alert("Error processing SQL : "+error.code);
});
});
删除函数
db.transaction(function(tx){
var abc= "DELETE FROM table_name WHERE id=?";
tx.executeSql(abc, [id], function(){
alert("success");
});
}, function errorCB(err){
alert("error");
console.warn("Error processing SQL: "+err.code);
}, function (){
alert("success");
});
这个问题可能听起来很傻,但我不知道为什么会这样,我搜索了这个但找不到任何有用的东西
【问题讨论】:
-
应该怎么做?
-
我想它应该给我一个错误@CL。你不这么认为吗?因为我正在尝试删除已删除的记录,或者与更新相同的情况,已删除的记录无法更新,所以它应该给我错误。
-
@user3060230 您应该使用
result.rowsAffected。如果小于 1,则表示更新/删除不成功。result.insertId应该用于 INSERT 语句。