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
-~----------~----~----~----~------~----~------~--~---

Reply via email to