【问题标题】:PDO deleting records from multiple tables using joinsPDO 使用连接从多个表中删除记录
【发布时间】:2015-08-05 19:15:49
【问题描述】:

我想删除带有照片表的表行。还有一个名为 photo_translate 的表,我在其中存储不同语言的替代文本。这可以使用连接吗?

$query=$db->prepare("DELETE FROM photo,photo_tranlate INNER JOIN photo_translate on photo.id=photo_translate.rec_id WHERE photo.rec_id=? and photo.page=?" );
    $query->bindvalue(1,$rec_id);
    $query->bindvalue(2,$page_id);
    $query->execute();

【问题讨论】:

    标签: php mysql pdo inner-join


    【解决方案1】:

    您应该在字段 photo_translate.rec_id 上设置一个带有“on delete cascade”的foreign key

    这样当你删除“photo”表中的记录时,“photo_translate”表中对应的记录会被自动删除。

    这是处理这种情况的正确方法

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 1970-01-01
      • 1970-01-01
      • 2015-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多