Sql 如何向函数发送附加参数?

Sql 如何向函数发送附加参数?,sql,html,web-sql,Sql,Html,Web Sql,我有以下代码显示Web SQL数据库中的文本: <span contenteditable="true" onkeyup="updateRecord('+item['id']+', this)">' + item['product'] + '</span> 不过,我有几个这样的价值观,我正试图与之合作。因此,我想指定列。如果我在函数中将列设置为product,那么上面的代码可以工作,在下面的代码中,我试图向函数发送一个附加参数,但它不工作。我做错了什么 &

我有以下代码显示Web SQL数据库中的文本:

<span contenteditable="true" 
    onkeyup="updateRecord('+item['id']+', this)">' + item['product'] + '</span>
不过,我有几个这样的价值观,我正试图与之合作。因此,我想指定列。如果我在函数中将列设置为product,那么上面的代码可以工作,在下面的代码中,我试图向函数发送一个附加参数,但它不工作。我做错了什么

  <span contenteditable="true" 
        onkeyup="updateRecord('+item['id']+', 'product', this)">'+ item['product'] + '</span>

  function updateRecord(id, column, textEl) {
    db.transaction(function(tx) {
      tx.executeSql("UPDATE products SET ? = ? WHERE id = ?", 
          [column, textEl.innerHTML, id], null, onError);
    });
  }
'+项目['product']+'
函数更新记录(id、列、文本){
数据库事务(功能(tx){
tx.executeSql(“更新产品集?=?其中id=?”,
[column,textEl.innerHTML,id],null,onError);
});
}

与任何完整的DBMS一样,您不能参数化列名,只能参数化值。 所以你需要这样做

  <span contenteditable="true" 
        onkeyup="updateRecord('+item['id']+', 'product', this)">'+ item['product'] + '</span>

  function updateRecord(id, column, textEl) {
    db.transaction(function(tx) {
      tx.executeSql("UPDATE products SET " + column + " = ? WHERE id = ?", 
          [column, textEl.innerHTML, id], null, onError);
    });
  }
'+项目['product']+'
函数更新记录(id、列、文本){
数据库事务(功能(tx){
tx.executeSql(“更新产品集”+列+”=?其中id=?”,
[column,textEl.innerHTML,id],null,onError);
});
}

谢谢,这解决了部分问题。我没有为语法错误提供足够的信息,但是我也被发现了。
  <span contenteditable="true" 
        onkeyup="updateRecord('+item['id']+', 'product', this)">'+ item['product'] + '</span>

  function updateRecord(id, column, textEl) {
    db.transaction(function(tx) {
      tx.executeSql("UPDATE products SET " + column + " = ? WHERE id = ?", 
          [column, textEl.innerHTML, id], null, onError);
    });
  }