I regret implementing the cascading delete in Zend_Db_Table even for one level. It was hard to do, required a lot of code, and still doesn't work. Even fixing ZF-1103 won't be enough. It's not possible to ensure data consistency when cascading operations are implemented in PHP code.

You should implement cascading delete or cascading update by defining SQL constraints in your database. I know there are a couple of technologies that don't support RI constraints (MyISAM, SQLite). If you need cascading delete or update, you should define triggers in the database, or else change to some other storage engine.

Regards,
Bill Karwin

On Mar 29, 2010, at 3:54 AM, Guillaume ORIOL wrote:

Hi,

I was working on an application that uses cascade delete and discovered a bug that was already known and reported.

I was wondering why the corresponding issue
http://zendframework.com/issues/browse/ZF-1103
had not been closed and included in a previous ZF release,
as a patch was provided and no new activity was recorded on the ticket since january the 2nd.

The lack of a consistent ON DELETE mechanism is rather awkward.

Best regards
--
Guillaume ORIOL
Software engineer
Technema

Reply via email to