as mentioned on IRC, you have to lose your reference to the ResultProxy
first (or close() it) so that the underlying connection is returned to
the connection pool, where it has a ROLLBACK issued on it.  this will
release the locks so that other connections can drop the table.  in the
case of fetchall(), when all results are consumed the ResultProxy
automatically performs this operation, in the case of fetchone() it
does not (more rows may be pending).

alternatively you can also use an explicit connection, so that there
are no locking issues (provided no concurrent connections getting
involved elsewhere):

conn = engine.connect()
r = conn.execute(users_table.select())
print r.fetchone()
users_table.drop(connectable=conn)
conn.close()


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to [email protected]
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