【问题标题】:SqlAlchemy delete() function doesn't workSqlAlchemy delete() 函数不起作用
【发布时间】:2016-04-27 21:32:35
【问题描述】:

我有一个代码:

engine = create_engine('mysql+pymysql://root:password@localhost/DBName')
Session = sessionmaker(bind=engine)
session = Session()
session.query(Theatre).filter(Theatre.id == 1).delete(synchronize_session = False) 
session.expire_All()

代码执行后返回0,对数据库没有影响。该行不会被删除。尝试通过命令提示符进行测试。

同时一个简单的选择查询运行良好

session.query(Theatre).all()

【问题讨论】:

  • 必须在.delete(...)之后尝试调用session.commit()

标签: python flask sqlalchemy flask-sqlalchemy


【解决方案1】:

功能是

session.expire_all()

all() 小写 a。见docs

【讨论】:

    【解决方案2】:

    也许您缺少commit

    session.commit()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-19
      • 2014-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多