I have put a self contained script that can probably reproduce this
for you. I think that the argument 'connect_args': {'autocommit' :
True } is causing the transactions to not work properly. Is this
expected and if so can you explain the reason. Thanks in advance.
====================================================================================================================
from sqlalchemy import *
from sqlalchemy.sql import *
def main():
"""
Main body of the script.
"""
meta = MetaData()
kwargs = {
'echo' : True,
'module_name' : 'pyodbc',
'connect_args': {'autocommit' : True },
}
engine = create_engine("mssql://login:password@/database?
driver=FreeTDS&dsn=DBDEV", **kwargs)
connection = engine.connect()
meta.bind = engine
table = Table("bbb", meta, Column('id', Integer,
primary_key=True), Column('name', String),
Column('tt_start', Date, primary_key=True),
Column('tt_end', Date, primary_key=True),
Column('vt_start', Date, primary_key=True),
Column('vt_end', Date, primary_key=True))
table.create()
for row in connection.execute(select([table])):
print row
trans = connection.begin()
try:
ins = table.insert().values(id=122, name='k',
tt_start='20100101', tt_end='20100101', vt_start='20100101',
vt_end='20100101')
connection.execute(ins)
ins = table.insert().values(id=121, name='k')
connection.execute(ins)
trans.commit()
except:
trans.rollback()
for row in connection.execute(select([table])):
print row
raise
if __name__ == "__main__":
main()
--
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.