Я работаю над проектом, в котором мне нужно спроектировать таблицу, такую как управление каталогами.Я просто новичок в DB, поэтому мне очень нужен опыт ваших парней.Моя текущая мысль о дизайне базы данных может быть проиллюстрирована ниже:
id name type create_time parent_id
1 folder1 folder 2011-2-3
2 folder2 folder 2011-2-3 1
3 folder3 folder 2011-2-3 1
4 folder4 folder 2011-2-3 1
5 file1 file 2011-2-3 4
....
, как вы можете видеть, parent_id указывает на свой собственный идентификатор таблицы PK.ограничение соответствует реальному миру: папки могут содержать папки, файлы не могут иметь дочерние элементы и т. д. ...
наиболее часто используемый сценарий запроса:
с учетомid, находит все свои подфайлы (включая папку и файл), для каждого файла указывает, есть ли у него дочерние элементы.
с учетом идентификатора находит идентификатор всех своих предков (родители, дедушка и бабушка...)
с учетом крупномасштабного приложения, вопросы:
- Как вы думаете, разумна ли схема?если нет, предложите один.
- для этих двух сценариев, как я могу писать запросы роботов, которые не будут снижать производительность.
спасибо за любую помощь.