簡體   English   中英

更新WebSQL中的一行數據

[英]Updating a row of data in WebSQL

WebSQL 已被棄用,但目前它對某些應用程序仍然有用。

這是我的表,我正在使用 KnockoutJS:

<table class='producttable'>
<tr>
    <th>Name</th>
    <th>Description</th>
    <th>Price</th>
</tr>
<tbody data-bind="foreach: products">
<tr>
    <td><input data-bind='value: name' /></td>
    <td><input data-bind='value: description' /></td>
    <td><input data-bind='value: price' /> </td>
</tr>
</tbody>
</table>

我已經能夠像這樣將數據保存/插入到 WebSQL 中:

function saveproduct(product) {
    db.transaction(function (tx) {
        tx.executeSql('INSERT INTO products (name, description, price) VALUES (?, ?, ?)',
        [product.name, product.description, product.price]);
    });
}

我不確定如何更新 WebSQL 中的一行數據。

我在下面試過這個,但它不起作用。 我是否朝着正確的方向前進?

function updateproduct(product) {
    db.transaction(function (tx) {
        tx.executeSql('UPDATE products SET name=? WHERE id=?', [product.title]);
    });
}

謝謝,當 'UPDATE products SET description=?, price=? WHERE name=?', [product.description, product.price, product.name]); 被執行。 我需要調整它,所以 name 是 id 。

實際上,您的代碼需要將 2 個變量映射到查詢中,但是我會建議另一種方法,這對我幫助很大。

在將其放入請求之前,您必須創建一個查詢字符串:

function updateproduct(product) {

let update_query = "UPDATE products SET name=" + product.title +  "WHERE id=" + product.title


    db.transaction(function (tx) {
        tx.executeSql(update_query);
    });
}

希望能幫助到你!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM