On 11/16/06, Don Arbow <[EMAIL PROTECTED]> wrote: > > On Nov 15, 2006, at 9:58 PM, simonbun wrote: > > > > The problem with getting the last record's id and using it, is that > > someone might have inserted yet another record while you're still > > working on the previous one. > > > > For single user scenario's it's ok, or if you're using table level > > write locking. Yet afaik, its generally a bad idea. > > > > Not sure how it works in MySQL, but in Postgres, getting the last > inserted id is unique to the current user's (database) session. So if > a user inserts a record into the table, then queries the sequence for > that id, the value will always be the same, regardless if other table > insertions have been done by other users since the first insertion. > So the last inserted id should be thought of as the id inserted by > this user, not the maximum id inserted by any user.
Yes, this is the functionality that i'm seeking. The id of the object most recently saved on a per user(connection) basis. In case of MySQL (5.0) the id is unique to connection. Here is the relevant portion frrom the docs "For LAST_INSERT_ID(), the most recently generated ID is maintained in the server on a per-connection basis. It is not changed by another client." Don't know about pre-5.0 versions, but i guess it is the same. > > The easiest way to get the last inserted id is to create an object, > save it, then read its id directly. If you need the maximum inserted > id, use select max(id) from table. To do this you should be using the create method and not the save method since the save does not return the object saved. p = Person.objects.create(first_name="Bruce", last_name="Springsteen") p.id will give you the id of the object saved. (example from the docs ) -- Manu --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---