How to access RowDataPacket mysql-node.js

23,947

Solution 1

Try this:

results[0].@update_id

Solution 2

use console.log(JSON.stringify(result));

then if you want to get access data on variable

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

you can't use index on var E.G

console.log(data[0].@update_id) it is wrong

Solution 3

just conver the result to array, then you can easily access the data, i get solved by doing this

let res = JSON.parse(JSON.stringify(result));
Share:
23,947
Arihant
Author by

Arihant

Updated on July 19, 2022

Comments

  • Arihant
    Arihant almost 2 years
    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);}
    });
    

    I am getting the following result from a query execution:

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

    How do I access the @update_id field to store the value in a variable. I know these are objects and I tried the following to access them such as follows:

    results.@update_id; 
    

    But I get undefined when I try to log the value. How to get the value?