List:General Discussion« Previous MessageNext Message »
From:Alec.Cawley Date:February 15 2005 10:35am
Subject:Re: last_insert_id
View as plain text  
"mel list_php" <list_php@stripped> wrote on 15/02/2005 10:18:55:

> Hi!
> 
> I have a database where several users can connect and input data.
> 
> I managed to have my insert queries as atomic, but I was wondering about 
one 
> special case: I make one insert, and retrieve the last id inserted by 
mysql 
> because I need to update an other table with that id.
> 
> - if one user inserts and retrieves the id, but between both one other 
has 
> inserted something the id returned will be the right one?
> 
> - or do I have to lock my table, execute the query, retrieve the id, 
unlock 
> the table?
> 
> - is there a way to make an atomic query with this that would avoid me 
to 
> use locks?

last_insert_id is on a per-connection basis i.e. it gives the last id 
inserted using that particular connection. Therefore you will always get 
the most recent ID that you inserted, not the most recent that anyone 
inserted.

I think, therefore, that the natural behaviour is what you want.

        Alec


Thread
last_insert_idmel list_php15 Feb
  • Re: last_insert_idJohan Höök15 Feb
  • Re: last_insert_idAlec.Cawley15 Feb
  • Re: last_insert_idPhilippe Poelvoorde15 Feb
    • Re: last_insert_idmel list_php15 Feb
    • Re: last_insert_idmel list_php15 Feb
    • Re: last_insert_idmel list_php15 Feb