klp
klp

Reputation: 153

How to update multiple columns in mysql using nodejs

How to update the multiple columns in MySQL using node.js:

var query = 'UPDATE employee SET profile_name = ? WHERE id = ?';
connection.query(query,[req.name,req.id] function (error, result, rows, fields) {

but I have to update profile_name, phone,email, country, state, address at once.
How can I do that, can anyone suggest.

Upvotes: 4

Views: 24365

Answers (3)

Titus Sutio Fanpula
Titus Sutio Fanpula

Reputation: 3613

👨‍🏫 To update your multiple columns in mysql using nodejs, then You can do it like this code below: 👇

const query = 'UPDATE `employee` SET ? WHERE ?';
connection.query(query, [req.body, req.params], function(err, rows) {
  if(err) {
    console.log(err.message);
    // do some stuff here
  } else {
    console.log(rows);
    // do some stuff here
  }
});

💡 Make sure your req.body is not empty and the field in your req.body it's same with the field in your employee table.

If your req.body is undefined or null, then you can add this middleware to your express server:

app.use(express.json());
app.use(express.urlencoded({ extended: true }));

I hope it can help you 🙏.

Upvotes: 8

sagi
sagi

Reputation: 40481

UPDATE statement syntax :

UPDATE <TableName>
SET <Col1> = <Val1>,
    <Col2> = <Val2>,
    ....
WHERE id = ?

Upvotes: 1

Jens
Jens

Reputation: 69440

Simply add all columns in set:

var query = 'UPDATE employee SET profile_name = ?, phone =?, .. WHERE id=?';

connection.query(query,[req.name,req.phone,...,req.id] function (error, result, rows, fields) {

Upvotes: 12

Related Questions