This is (part of) my mapping: data = Table('data', metadata, Column('id', Integer, primary_key=True), Column('id_acq', Integer, ForeignKey('acquisitions.id'), index=True, nullable=False), Column('value', Float, nullable=True), )
acquisitions = Table('acquisitions', metadata, Column('id', Integer, primary_key=True), Column('datetime', DateTime, index=True, nullable=False), ) orm.mapper(Data, data) orm.mapper(Acquisition, acquisitions, properties={ 'data': orm.relationship(Data, backref='acquisition', cascade='all, delete-orphan', single_parent=True) }) Now that my app is depolyed using MySQL (InnoDB) I need to add a feature for multiple acquisitions delete. As far as I understand I need to change relationship above adding `passive_deletes=True`so I can perform multiple deletions without having IntegrityError: 'Cannot delete or update a parent row: a foreign key constraint fails' with: Session.query(model.Acquisition).filter(...).delete(synchronize_session=False) My questions are: * how do I perform changes on my current MySQL db foreign key 'id_acq'? Is there a SA way or simply I have to use mysql tools? * when I will eventually run again `paster setup-app` on a new db will be acquisitions table built with ON DELETE CASCADE by default? * since MySQL (InnoDB) supports ON DELETE CASCADE is it recommended I switch on `passive_deletes=True` all my relationships so I can get better performances? Thanks for your support neurino -- 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.