1
我遇到了这篇文章http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/但我没有得到“添加新节点”部分。在MySQL中管理分层数据
它说我能做到这一点,以添加一个新的节点:
SELECT @myRight := rgt FROM nested_category
WHERE name = 'TELEVISIONS';
UPDATE nested_category SET rgt = rgt + 2 WHERE rgt > @myRight;
UPDATE nested_category SET lft = lft + 2 WHERE lft > @myRight;
INSERT INTO nested_category(name, lft, rgt) VALUES('GAME CONSOLES', @myRight + 1, @myRight + 2);
- 在运行时我就知道父不是兄弟。
- 如果该节点根本没有兄弟姐妹怎么办?如何添加?
- 如何添加新的根节点?
而不是那个结构,你应该使用*闭包表*的方法。 – 2012-01-01 19:59:13
@tereško谢谢,但为什么? – oaziz 2012-01-01 20:45:27
因为无论你做什么,最终都会出现错误。这种方法适用于相对较少的记录,但对于更大的集合或更多的事务,您应该使用闭包表。 – Mroz 2013-10-22 10:53:06