Javascript SQLite向js中的现有值添加数值变量

Javascript SQLite向js中的现有值添加数值变量,javascript,sqlite,Javascript,Sqlite,我有下表 buildingcode buildingreceiptno buildingaddress buildingpay 1012 2 address 1 0 1001 3 address 2 0 1003 0 address 3 0 我想通过一个数值变量来更新某个构建代码的buildingreceive 我使

我有下表

buildingcode buildingreceiptno buildingaddress buildingpay
1012         2                 address 1       0
1001         3                 address 2       0
1003         0                 address 3       0
我想通过一个数值变量来更新某个构建代码的buildingreceive

我使用以下代码,但它不起作用

t.executeSql('UPDATE buildings SET buildingpay = ?, buildingreceiptno = buildingreceiptno + numericalValue WHERE buildingaddress = ?', 
     [myrow.payamount.toFixed(2), myrow.buildingaddress]);

myrow.payamount.toFixed(2)、myrow.buildingaddress是正确的变量

您可以对其进行改进,但这应该是解决问题的有效方法:

db.transaction(function(tx) {

  // Get buildingreceiptno value
  tx.executeSql(
    "SELECT buildingreceiptno FROM buildings  WHERE buildingaddress = ?", 
    [myrow.buildingaddress], 
    function(tx, res) {
        var buildingreceiptno = res.rows.item(0).buildingreceiptno;
        tx.executeSql(
            "UPDATE buildings SET buildingpay = ?, buildingreceiptno = ? WHERE buildingaddress = ?",
            [myrow.payamount.toFixed(2), buildingreceiptno + numericalValue, myrow.buildingaddress], 
            function(tx, res) { console.log(tx, res); }, 
            function(tx, err) { console.log('ERROR: ', tx, err); }
        );
    }, 
    function(tx, err) { console.log('ERROR: ', tx, err); }); 
  });
总是使用错误回调来打印错误,这很有帮助