Создание родительского и дочернего списка записей MSG, сохраненных в MySQL? - PullRequest
1 голос
/ 29 ноября 2010

Как я могу сохранить данные сообщений в базе данных, чтобы я мог распечатать их как родительские дочерние узлы в неупорядоченном списке? У каждого корневого узла может быть 2 дочерних элемента (глубина), то есть, как дед, отец и дети. например,

 -vehicle
   -public
     -Lorry //Lorry is lost node for root vehicle,           

Поля, которые в настоящее время хранятся в сообщениях о сообщениях: ID (PK), имя, сообщение, msg_id (уникально). Я думаю, что, если каждая запись может иметь поле 'parent', которое будет содержать 'msg_id' записи, для которой она является дочерней. Затем эта информация может быть использована для получения всех родителей и всех дочерних узлов родителей. И тогда они могут быть напечатаны в родительской дочерней иерархии в неупорядоченном списке.

1 Ответ

0 голосов
/ 29 ноября 2010

Для каждого узла (строки в базе данных) сохраните ссылку на родительский элемент.

Пример:

| name    | id      | parent_id
------------------------------
| vehicle | 1       | null
| public  | 2       | 1
| Lorry   | 3       | 2

Это самый простой и понятный подход.

...