Search code examples
mysqlnode.js

Retrieve last inserted id with Mysql


Good day,

I am willing to retrieve the id value of a freshly inserted row in Mysql.

I know there is mysqli_insert_id function, but:

  1. I can't specify the table
  2. Maybe there would be a risk of retrieving the wrong id, if a query is made in the meanwhile.
  3. I am using node.js MySQL

I don't want to take the risk to query the highest id since there are a lot of queries, it could give me the wrong one...

(My id column is on auto-increment)


Solution

  • https://github.com/mysqljs/mysql#getting-the-id-of-an-inserted-row describes the solution perfectly well:

    connection.query('INSERT INTO posts SET ?', {title: 'test'}, function(err, result, fields) {
      if (err) throw err;
    
      console.log(result.insertId);
    });