SQLAlchemy delete association objects SQLAlchemy delete association objects flask flask

SQLAlchemy delete association objects


I had the same problem with SQLALchemy 0.9 using MySQL 5.6. It looks like a bug/limitation. However, one better way to get arround (in comparison to creating the query, looping through the results and deleting them one by one) is to perform this task in two subsequent queries:

    paperQuery = db.session.query(Paper.id)\                                    filter(Paper.journal_id == journal.id)    baseQuery  = db.session.query(UserPaper)\                                    .filter(UserPaper.paper_id.in_(paperQuery.subquery()))                                    .filter(UserPaper.user_id == user.id).delete(synchronize_session='fetch')

It worked well for me, it should solve you issue too.