On Jul 2, 2008, at 3:20 PM, andres wrote:
> > Hi, > > I'm just starting out with SQLAlchemy and I encountered some > unexpected behavior with autoflush and mysql. I expected that setting > autoflush=True would force a flush after every DB call. However, it > seems that a flush isn't happening automatically on an add/delete. > > Here is my test script: > ## > mysqlflush.py > import sqlalchemy as sa > from sqlalchemy import orm > > metadata = sa.MetaData() > > tmptable_table = sa.Table('TmpTable', metadata, > sa.Column('id', sa.types.Integer, > primary_key=True), > sa.Column('val', sa.types.String(100), > nullable=False) > ) > > class TmpTable(object): > def __init__(self,val): > self.val = val > > orm.mapper(TmpTable, tmptable_table) > > engine = sa.create_engine('mysql://user:[EMAIL PROTECTED]:3306/ > test_db', echo=True) > metadata.create_all(engine) > Session = orm.sessionmaker(bind=engine, autoflush=True, > transactional=True)() > > for i in range(0,100,1): > Session.save_or_update(TmpTable(val='blah')) > > > > The results of running the test script are: > mysql> select * from test_db.TmpTable; > Empty set (0.00 sec) > the session flushes on every commit(), and when autoflush=True on every Query execution as well. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---