【问题标题】:How to access RowDataPacket mysql-node.js如何访问 RowDataPacket mysql-node.js
【发布时间】:2016-11-03 03:18:56
【问题描述】:
connection.query('
SET @update_id := 0; 
UPDATE relations set x1 = ?, y1 = ?, id = (SELECT @update_id := id) WHERE element_to =?;
SELECT @update_id;',[data.x2,data.y2,id],function(err,result){
if(err){console.error(err);}
else{console.log(result);console.log(result.@update_id);}
});

我从查询执行中得到以下结果:

[ RowDataPacket {
  '@update_id': 'WAbWA1WA5WA2WA8WAdWA4WA9' } ] ]

如何访问 @update_id 字段以将值存储在变量中。我知道这些是对象,我尝试了以下方法来访问它们,如下所示:

results.@update_id; 

但是当我尝试记录该值时,我得到了未定义。如何获得价值?

【问题讨论】:

标签: javascript mysql sql node.js


【解决方案1】:

只需将结果转换为数组,然后您就可以轻松访问数据,我这样做解决了

let res = JSON.parse(JSON.stringify(result));

【讨论】:

    【解决方案2】:

    使用console.log(JSON.stringify(result));

    如果你想获取变量的访问数据

    var data = JSON.stringify(result[0].@update_id)
    console.log(data);
    

    你不能在 var E.G 上使用索引

    console.log(data[0].@update_id)错了

    【讨论】:

      【解决方案3】:

      试试这个:

      results[0].@update_id
      

      【讨论】:

        猜你喜欢
        • 2020-07-26
        • 1970-01-01
        • 2018-10-14
        • 2019-05-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-26
        相关资源
        最近更新 更多