|
Posted by Michael Fesser on 03/03/07 05:54
..oO(Ivan Marsh)
>On Fri, 02 Mar 2007 11:28:02 -0800, paladin.rithe@gmail.com wrote:
>
>> I have 2 statements that I'd like to string together in a query, but
>> according to everything I'm seeing, it's not possible.
>> What I'm doing is an insert of a row, where the primary key is an auto
>> increment. I want to retrieve that by using LAST_INSERT_ID(). I
>> tried sending another query after the first (once I knew that it the
>> data was what I need) but it didn't return anything. It seems that
>> that function can't be used in separate calls or something. Either
>> that or there's a setting that I need to check. Any ideas?
Neither nor, there's an error in your second query. Please post some
code and the used query.
>If you're trying to return the last inserted row on a table with an auto
>increment field all you have to do is query the maximum value in that
>field.
Wrong! Never do it that way, never! Google for "race condition" and you
will know why. The correct way to do it is to call LAST_INSERT_ID(),
either natively in a query or through a higher API function like
mysql_insert_id().
Micha
[Back to original message]
|