Главная страница
    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.45 MB
Время: 0.039 c
14-1129577447
raymond
2005-10-17 23:30
2005.11.06
Инет-провайдер, PPP, хочу разобраться...


2-1129362612
Vital
2005-10-15 11:50
2005.11.06
Pисунок на форме


2-1129364731
Vital
2005-10-15 12:25
2005.11.06
не используя OnPaint


14-1129711273
vecna
2005-10-19 12:41
2005.11.06
Тааак.... список непонятных моментов в Дельфи начинает расти


9-1119554752
Novouralsk
2005-06-23 23:25
2005.11.06
Отрожени в воде с использованием Шейдеров





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский