sqlite:如何获取具有更新按钮的行的行ID?

时间:2018-08-05 19:02:57

标签: html node.js sqlite electron

我有一个带有lastdate列的sqlite3数据库,然后查询此列并将其放入HTML表中,并为每个HTML表行动态添加一个更新按钮。

也通过单击更新按钮,将打开另一个页面,其中包含输入字段type="date"和另一个更新按钮,当我单击此更新按钮时,一个函数将查询行的ID并更新数据库中的相应列值

但是,无论我单击哪个行,此函数始终更新最后一行。我的功能如下:

ipcMain.on("update-hide",function(event, inptData){
    var sqlDB = new sqlite3.Database('./database.sqlite')
    var dateupdate = inptData.toString();
    var id_1;

    sqlDB.serialize(() => {
    sqlDB.serialize(() => {
        var n = 0;
        sqlDB.each("SELECT * FROM info", function(err, row, i) {
                let data = {id: row.ID,};
                var id = data.id;
                id_1 = id;
            }, ()=> {
                let listOfData = [dateupdate,id_1];
                sqlDB.run(`UPDATE infoSET lastdate = (?)WHERE id=(?)`, listOfData, function(err) {
                    if(err){
                        console.log(err)
                    }
                    else{
                        console.log(`Row(s) updated: ${this.changes}`);
                    }
                    sqlDB.close();
                });
            });
        });
    });
})

那么如何查询单击更新按钮的行的ID?

注意:

我正在使用电子框架。

1 个答案:

答案 0 :(得分:1)

我想也许您应该将行ID传递到另一个页面,并使用get方法从url中获取ID,例如

$ ids = $ result [“ ID”];

index.php?id ='。$ ids。' //这将获取您必须将行ID存储到ID中的列的相应行ID

index.php?id = 1 // url

$ id = $ _GET [“ id”]; //获取ID