2012-08-15 43 views
2

为完成我有以下代码:如何标记一个SQLite交易中的PhoneGap

db.transaction(
    function runQuery(tx) { 
     tx.executeSql(
     'delete from meetings where id='+id 
    ); 
     log('delete from meetings where id='+id); 
    }, 
    function(e) { 
     log('failed to delete from database: '+e.code); 
    }, 
    function() { 
     log('meeting deleted from db: '+id); 
     setTimeout(callback, 1); 
    } 
); 
回调

,我查询了会议桌,和我刚刚删除的行仍然存在。这是超时是1,1000还是其他。

如何告诉phonegap请关闭交易,以便数据库正确同步?

+0

如果我尝试添加tx.executeSql('commit');到runQuery函数,我从sqlite中得到一个“未经授权”的错误 – 2012-08-15 10:54:57

回答

4

对于任何人有同样的问题,这对我有效。 http://osdir.com/ml/phonegap/2012-12/msg00429.html

db.transaction(function(tx) {tx.executeSql("Delete FROM myTable where id=?",[1]);}, errorDeleteCB,successDeleteCB); 

只有真正的区别我看到的是使用?和[1]