Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I update json data in postgres sql in nodejs?

my data structure schema is like

users(
  id serial primary key,
  data json
);

I want to update data key.

I'm using node-postgres library and So far I have tried something like this:

pg.connect(process.env.DATABASE_URL, function(err, client, done) {
    var queryString = "UPDATE users SET data =" + myNewJsonData + " WHERE  id = " + userIdToEdit + ";";
    client.query(queryString, function(err, result) {
        done();
        if (err) {
            res.send("Failed to update user data ");
            throw err;
        } else {
            res.send("Successfully updated user data!! ");
        }
    });
});

this is not working, I'm getting error invalid input syntax for type json

Can anyone help, Thanks.

like image 440
Abhishek Avatar asked Nov 03 '25 22:11

Abhishek


1 Answers

So it was a syntax error, All I had to do stringfy json data and put that in 'quotes'

pg.connect(process.env.DATABASE_URL, function(err, client, done) {
var newJsonDataStringyfied = JSON.stringify(myNewJsonData)
var queryString = "UPDATE users SET data = '" + newJsonDataStringyfied + "' WHERE  id = " + userIdToEdit + ";";
    client.query(queryString, function(err, result) {
        done();
        if (err) {
            res.send("Failed to update user data ");
            throw err;
        } else {
            res.send("Successfully updated user data!! ");
        }
    });
});
like image 89
Abhishek Avatar answered Nov 06 '25 16:11

Abhishek



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!