【问题标题】:Sqlalchemy seems to commit changes when it's not supposed toSqlalchemy 似乎在不应该提交更改时提交更改
【发布时间】:2010-09-08 04:24:19
【问题描述】:

考虑以下 Python 代码的 sn-p:

from sqlalchemy import *
from sqlalchemy.orm import *
db = create_engine('postgresql:///database', isolation_level='SERIALIZABLE')
Session = scoped_session(sessionmaker(bind=db, autocommit=False))
s = Session()
s.add(SomeInstance())
s.flush()
raw_input('Did it work? ')

它连接到数据库,将SomeInstance 添加到会话中,刷新,然后暂停。此时,如果我将 psql 插入我的数据库,我会看到该实例已被插入——即使 autocommit 为 False 并且我还没有提交会话!

知道我做错了什么吗?

谢谢!

【问题讨论】:

    标签: python postgresql sqlalchemy


    【解决方案1】:

    没关系,sqlalchemy 0.6.3 中的 psycopg2.py 实现存在错误;升级到 0.6.4 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-06
      • 2019-10-03
      • 2015-11-15
      • 2012-10-05
      • 2010-09-07
      • 1970-01-01
      • 2015-05-04
      相关资源
      最近更新 更多