使用外键+ Propel清除表

时间:2013-08-23 14:38:59

标签: php mysql zend-framework propel clear

我有一个mysql数据库,里面有一些表。两个表的示例:

  

表“ dogtoilets

     - 类型
     - location_id(FK)

     

表“位置

     - id
     - 纬度
     - 经度

我的问题是如何清除表格“dogtoilets并清除我的位置表中与dogtoilets相关的位置?

试过这个,但地点不会删除......

$dogtoilets = DogToiletQuery::create()
        ->leftJoinWith('Dogtoilet.Location')
        ->find();
    $dogtoilets->delete();

2 个答案:

答案 0 :(得分:2)

希望这个帮助: http://en.wikipedia.org/wiki/Foreign_key#CASCADE

Cascade仅在您删除“位置”中的行时有效,它会自动删除“ dogtoilets ”中的相关行

在这种情况下,您应该使用您的代码手动删除。

答案 1 :(得分:0)

将此添加到外键约束:

ON DELETE CASCADE;

它将删除与FK链接的所有引用对象。