Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Вниз

Структура базы - подскажите.   Найти похожие ветки 

 
TechnoDreamer ©   (2005-09-24 03:41) [0]

Как лучше сделать базу.

Есть три таблицы: диск, папка, файл. (Можно и в одной, но три вроде удобнее, там не все поля одинаковые).
Все оно хранится в древовидной структуре.
Каждый диск, файл или папка уникальны и имеют свой id и id родительского элемента (для корневых это 0).

Как лучше сделать структуру этой базы, что бы иметь максимально быстрый по ней поиск на запросы вида:
всё файлы в папке "такой то" с учетом все подпапок.


 
Sergey_Masloff   (2005-09-24 08:44) [1]

Сначала ответь чем диск отличается от папки.


 
TechnoDreamer ©   (2005-09-24 11:41) [2]

Разве это существенно? Ну вообщем у дисков немного другие поля. Плюс диск не может быть дочерним элементом другого диска, папки или файла.
А файл не может быть родителем любого другого элемента.


 
Anatoly Podgoretsky ©   (2005-09-24 11:47) [3]

Нету никаких дисков, это все папки


 
Виталька2005   (2005-09-24 12:45) [4]

Если вложенность небольшая, то можно у каждого элемента сделать
поля с id-шниками всех родителей, и при добавлении их обновлять.


 
TechnoDreamer ©   (2005-09-24 14:34) [5]

Вложенность можент быть очень большой. Я так понимаю без рекурсии тут никак?

2Anatoly Podgoretsky: глубокомысленное утверждение конечно, только чем это может мне помочь?


 
atruhin ©   (2005-09-24 17:02) [6]

Набери в поисковике "деревья в базах данных" потом внимательно читай ссылки и думай. Так как корневой элемент у тебя диск а остальные вложенные, типично задача решается одной таблицей.
У любого диска, папки, файла есть ID, Имя, Родитель, Дата создания и т.д, если оставшаяся информация сильно различается, делаешь 3 доп. таблицы, а в основной ссылку на доп. информацию, обычная связь 1 к 1.
Способов реализации дерева есть немало, в зависимости от глубины вложенности, от необходимой скорости поиска, вставки, аналитических выборок.
Вобщем прочитай ВСЮ найденную информацию, потом задавай конкретные вопросы.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.049 c
1-1129160464
stef
2005-10-13 03:41
2005.11.06
Не получается создать список объектов


1-1129192785
Friend
2005-10-13 12:39
2005.11.06
Pos в RichEdit


14-1129225171
spotter
2005-10-13 21:39
2005.11.06
Простенькая задачка на прологе.


4-1125093097
ronyn
2005-08-27 01:51
2005.11.06
Как шрифт установить?...


2-1129083148
AlexLines
2005-10-12 06:12
2005.11.06
ПРОБЛЕМА С LIKE "A%" И LIKE "A"





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский