Commit behavior depends on how you configure the session's autocommit property. Follow the log messages in this little test.
from sqlalchemy import MetaData, Table, Column, String from sqlalchemy.orm import sessionmaker meta = MetaData('sqlite:///') Session = sessionmaker(bind=meta.bind) t = Table('something',meta, Column('stuff',String) ) print '+++++++++ create_all()' meta.create_all() meta.bind.echo=True session1 = Session(autocommit=False) # this is default behavior print '+++++++++ execute() will not include commit' session1.execute("insert into something(stuff) values('some stuff')") print '+++++++++ commit() need to do it yourself' session1.commit() session2 = Session(autocommit=True) # commit is configurable print '+++++++++ execute() will include commit' session2.execute("insert into something(stuff) values('some more stuff')") On Feb 2, 1:15 pm, Bob Farrell <robertanthonyfarr...@googlemail.com> wrote: > On Mon, Feb 02, 2009 at 09:56:15AM -0800, Pavel Skvazh wrote: > > > Session.execute('INSERT INTO SOMETHING SOMETHING / DELETE/ UPDATE') > > > Do I have to call Session.commit() after this or it's already taken > > care of? In other words does the literal sql statements follow the > > session transaction rules or they act on there own? > > sess.execute() will execute whatever you pass it immediately. > > > And since this works and worked for me for a long time now, what's the > > benefit of from sqlalchemy.sql import text that I noticed in the docs > > lately? > > Using text() creates a ClauseElement that you can whack together with other > constructs. See the docs here for more > info:http://www.sqlalchemy.org/docs/05/sqlexpression.html#using-text > > > Thanks! > > -- > -------------------------- > Bob Farrell > pH, an Experian Companywww.phgroup.com > Office Line: 020 7598 0310 > Fax: 020 7598 0311 > -------------------------- --~--~---------~--~----~------------~-------~--~----~ 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 sqlalchemy+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---