У меня простой вопрос.
Моя структура базы данных:
id | name | left | right // no need to tell me that left, right are reserved keywords
Единственные данные в базе данных:
1 | family | 1 | 2
Теперь я хочудобавить новый child
в семью: mother
.Поэтому теоретически я должен взять правильное значение элемента, к которому я хочу добавить дочерний элемент, и освободить некоторое пространство после него.
UPDATE `hp_tree` SET `right`=`right`+2 WHERE `right` > 2;
UPDATE `hp_tree` SET `left`=`left`+2 WHERE `left` > 2;
И затем просто вставить дочерний элемент mother
:
INSERT INTO `hp_tree` SET `left`=2, `right`=3, `name`='Mother';
Теперь проблема в том, что таким образом значение family
(корневой элемент) right
не обновляется.Я делаю это неправильно?