我得到了下面的表格,其中包含一些数据:
Products:
+---------------------------+
|id|name |details |price|cn|
|__|_____|_________|_____|__|
| 1|pen |somethi |100 |10|
| 2|paper|something|30 |11|
+---------------------------+
Categories:
+----------------------------+
|id | name |parent_id |
|____________________________|
|1 | granny | 0 |
|2 | dad | 1 |
|3 | grandson | 2 |
|4 | grandson 2| 2 |
+----------------------------+
Products2categories:
+-------------------------------+
| id | product_id | category_id|
|_______________________________|
| 1 | 1 | 3 |
| 2 | 1 | 2 |
| 3 | 1 | 1 |
+-------------------------------+
基本上,有产品,类别和表格将产品与类别相匹配。
正如您所看到的,每个产品都可以与多个类别相关,就像上面的示例中,ID为1
(笔)的产品与类别相关:1,2,3。< / p>
这就是数据库的构建方式。
注意:每个类别只能有3个级别,这意味着grandson and grandson2
不能是父级。
现在,我正在努力的是delete
功能。
我想从列表中选择一个类别,该类别可以是祖父类别,mabe是父类别,甚至是孙子类别。点击删除按钮后,我想删除以下内容:
Products2Categories
例如:
如果我删除类别granny
我想删除与其相关的所有产品,那么我想删除{son}类别dad
以及所有相关产品然后,因为Products2Categories
有一个“儿子”,我想删除他的儿子,他实际上有两个,dad
和所有的与他们和当然相关的产品将他们从grandson and grandson2
表中取消链接。
我一直在努力想出一个能够在过去两天内完成这项任务的代码,而我却无法提出任何想法,我几乎已经迷失了。
提前致谢!
注意:如果您需要 ANY 其他信息,请随时提出要求!