What I forgot to mention in all that, is that SQLA also supports SAVEPOINT very strongly. Using a SAVEPOINT-capable database opens up your choices for being able to flush(), hit an error, and then retry what you were doing, without a rollback of the overarching transaction needed. We call this a "begin_nested()". 0.5 makes these very easy as when you issue begin_nested(), the session is synchronized with the DB transaction beforehand, so if an IntegrityError or such raises at that point, you just issue a rollback() straight to the last SAVEPOINT, the state of the session expires back to the last flush, and you're good to continue. So if you like to try things again this is a practice that should be considered.
--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---