【问题标题】:Mysql delete descendantsmysql删除后代
【发布时间】:2011-06-13 10:31:34
【问题描述】:

我有一张图片表,这些图片将有各种后代,例如缩略图、不同大小的版本和裁剪(以及这些裁剪的缩略图)等。

这意味着每个原始图像都可能有相当多的后代。这些后代由提供直接父级的 parent_id 字段引用。

什么是最好、最有效的方法,因为显然为每个图像/级别选择所有子级然后删除它们将是相当沉重的,如果有批量图像删除?

【问题讨论】:

    标签: mysql cascading-deletes descendant


    【解决方案1】:

    您需要查看.. 是级联删除。

    mysql网站上的这篇文章应该可以帮到你。

    http://dev.mysql.com/tech-resources/articles/mysql-enforcing-foreign-keys.html

    【讨论】:

    【解决方案2】:

    使用 InnoDB 外键 - 并使用级联删除选项将 parent_id 链接到 id

    或者使用不同的树索引,以避免递归。 例如嵌套集模型,如Managing Hierarchical Data in MySQL 中所述。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-02
      • 2012-01-22
      • 2013-11-14
      • 1970-01-01
      • 1970-01-01
      • 2016-11-29
      • 2011-12-21
      相关资源
      最近更新 更多