Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

344
Views
Insert function in node in postgre

Hello i am following a tutorial and trying to do a simple insert query but getting 404 error.I am trying to input values using postman.

function

function insertUser(req, res, next){
  req.body.users = parseInt(req.body.users);
  
  db.none('INSERT INTO office.users (role_id, office_id, user_name, full_name) ' +
    'VALUES (${role_id}, ${office_id}, ${user_name}, ${full_name})', req.body.users)
   .then(function(){
        res.status(200)
        .json({
          status: 'success',
          message: 'Inserted one user'
   });
   })
 .catch(error => {
        console.log(error);
        next();
})
}

The stack trace says problem is near "values".i am not getting it.following i flow with the documentation.Something wrong with the query?

Stack trace

POST /api/users 401 83.997 ms - 43 { [error: syntax error at or near "$"] name: 'error', length: 102, severity: 'ERROR', code: '42601', detail: undefined, hint: undefined, position: '78', internalPosition: undefined, internalQuery: undefined, where: undefined, schema: undefined, table: undefined, column: undefined, dataType: undefined, constraint: undefined, file: 'src\backend\parser\scan.l', line: '1053', routine: 'scanner_yyerror' }

I am on my 5th day with Node.Bear with me.

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Error code 42601 is a postgres syntax error. If you were to print our your sql statement to the page you would see something like this:

"INSERT INTO office.users VALUES (role_id,office_id,user_name,full_name)values(${role_id},${office_id},${user_name},${full_name})"

There's multiple things wrong with this. First, your preceding your list of columns with VALUES. Second, you have no space between your list of columns and the (proper) values key word. Your statement should look like this:

"INSERT INTO office.users (role_id, office_id, user_name, full_name) VALUES (${role_id}, ${office_id}, ${user_name}, ${full_name})"

Which means your javascript needs to look more like this:

db.none('INSERT INTO office.users (role_id, office_id, user_name, full_name) ' +
        'VALUES (${role_id}, ${office_id}, ${user_name}, ${full_name})', req.body.users);
about 4 years ago · Santiago Trujillo Report

0

Silly mistake declaring variable

This worked

 db.none('INSERT INTO office.users(role_id, office_id, user_name, full_name, password)' +
         'values(${role_id},${office_id},${user_name},${full_name},${password})', req.body)

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!