Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Нужны идеи по структуре / 25 сообщений из 26, страница 1 из 2
14.02.2008, 10:24
    #35131858
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Добрый день.

Необходимо разработать структуру которая будет содержать следующие объекты:

1) Группа ресурсов
3) Ресурс

Группа ресурсов может входить в другие группы ресурсов
Ресурс может входить в несколько групп ресурсов

Группа пользователей может входить в другие группы пользователей
Пользователь может входить в несколько групп пользователей

пример:
есть ресурс "Валенок резиновый", он входит в группу ресурсов "Валенки", которая входит в группу ресурсов "Обувь". Также в группу ресурсов "Обувь" может входить еще несколько групп ресурсов подтипа "Туфли", "Калоши".

Для соотношения зависимости предок-потомок необходимо создать одну таблицу, из которой одним запросом можно-бы было вытащить всю иерархию к примеру для "Валенок резиновый". Что-то вроде древовидной системы.

Если слишком невнятно объяснил, пинайте :) Я пока не силен в разработке БД :(
...
Рейтинг: 0 / 0
14.02.2008, 10:30
    #35131884
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Либо если кто-то разрабатывал подобную систему, просьба пнуть меня в нужную сторону :)
...
Рейтинг: 0 / 0
14.02.2008, 11:19
    #35132072
FAndrew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Многое зависит действительно ли ресурс может входить в несколько групп ресурсов.
А так получается простейшая схема:
1. Таблица групп, которая ссылается сама на себя через поле ид родителя. У верхней группы ид NULL
2. Таблица ресурсов.
Если ресурс только в одной группе, то ссылка на таблицу групп.
Иначе дабавляется ссылочная таблица Группы-Ресурсы с двумия полями: Ид группы, Ид ресурса с отношением многие-ко-многим.

А вот затягивать лучше не одним запросом, а двумя. Первым тащим иерархию групп. А вторым ресурсы. (для случая ресурс в одной группе)
...
Рейтинг: 0 / 0
14.02.2008, 11:20
    #35132076
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16Необходимо разработать структуру которая будет содержать следующие объекты:

1) Группа ресурсов
3) Ресурс

Группа ресурсов может входить в другие группы ресурсов
Ресурс может входить в несколько групп ресурсов

Три таблицы:
1. Ресурсы - простой список
2. Вхождение Ресурса в Группы ресурсов - список групп для одного ресурса
3 Группы ресурсов - иерархический классификатор
годится для любых объектов
...
Рейтинг: 0 / 0
14.02.2008, 11:28
    #35132109
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
авторМногое зависит действительно ли ресурс может входить в несколько групп ресурсов.
Да, ресурс может входить в несколько групп

авторТри таблицы:
1. Ресурсы - простой список
2. Вхождение Ресурса в Группы ресурсов - список групп для одного ресурса
3 Группы ресурсов - иерархический классификатор
годится для любых объектов
В три таблицы я могу сделать, но мне нужно именно в одну (таблица ресурсов как ты верно подметил - отдельная таблица)
...
Рейтинг: 0 / 0
14.02.2008, 11:38
    #35132144
GUESТ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
а что тут хитрого-то? типовая-ж задача...

групы ресурсов в таблице parent-child, сами ресурсы One-To-Many к группам ресурсов
...
Рейтинг: 0 / 0
14.02.2008, 11:46
    #35132175
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Для кого типовая, а для кого - дремучий лес :)
если ты подскажешь как в этой типовой задачке потом одним запросом вытянуть всю иерархию, будет просто замечательно :)
...
Рейтинг: 0 / 0
14.02.2008, 12:15
    #35132308
GUESТ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16одним запросом вытянуть всю иерархию, будет просто замечательно :)

воспользуйся поиском по форуму
...
Рейтинг: 0 / 0
14.02.2008, 12:29
    #35132358
nosov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
может БД Lotus Notes подойдет !!!

1. БД Lotus Notes может содержать N документов.
2. Каждый Документ может содержать N вложений.
3. Каждое Вложение может содержать N вложений N полей и N прикрепленных файлов.
3. Каждое Поле помимо данных может содержать N ссылок на N обЪеков любых БД лотус нотес.

вроде так -- однако я не программер.
...
Рейтинг: 0 / 0
14.02.2008, 13:22
    #35132560
Son_of_Morning
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Create Table "UserGroups" (
"ID" Integer NOT NULL,
"ParentID" Integer,
"Name" Varchar(50) NOT NULL,
Primary Key ("ID"),

Foreign Key ("ParentID") references "UserGroups" ("ID")
);


Create Table "Users" (
"ID" Integer NOT NULL,
"Name" Varchar(50) NOT NULL,
Primary Key ("ID")
);

Create Table "UserGroupsMembership" (
"UserID" Integer NOT NULL,
"GroupID" Integer NOT NULL,
Primary Key ("UserID","GroupID"),

Foreign Key ("UserID") references "Users" ("ID")
Foreign Key ("GroupID") references "UserGroups" ("ID")
);
...
Рейтинг: 0 / 0
14.02.2008, 13:24
    #35132572
Son_of_Morning
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
ну вместо варчаров лучше использовать домены,
+ не использовать кавычки, если ты хочешь регистронезависимые имена.
...
Рейтинг: 0 / 0
14.02.2008, 13:57
    #35132714
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16В три таблицы я могу сделать, но мне нужно именно в одну
В одну не получится, только в 3.
...
Рейтинг: 0 / 0
14.02.2008, 14:40
    #35132925
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
_мод Feg16В три таблицы я могу сделать, но мне нужно именно в одну
В одну не получится, только в 3.

А как же 1НФ?
...
Рейтинг: 0 / 0
14.02.2008, 14:44
    #35132944
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16Да, ресурс может входить в несколько групп
Несерьезно как-то, похоже на желание масимально усложнить себе работу.
Почему эти несколько групп ресурсов не могут быть объединены в одну группу ресурсов, а ресурс пусть входит в эту одну объединенную группу?
...
Рейтинг: 0 / 0
14.02.2008, 14:50
    #35132982
Cane Cat Fisher
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16
Пользователь может входить в несколько групп пользователей

пример:
есть ресурс "Валенок резиновый", он входит в группу ресурсов "Валенки", которая входит в группу ресурсов "Обувь". Также в группу ресурсов "Обувь" может входить еще несколько групп ресурсов подтипа "Туфли", "Калоши".

Для соотношения зависимости предок-потомок необходимо создать одну таблицу, из которой одним запросом можно-бы было вытащить всю иерархию к примеру для "Валенок резиновый".


Если бы пользователь мог входить только в одну группу, понятие "иерархия пользователя" было бы понятным, например "ЗаводБольшой/Отдел1/Пользователи/Иванов", и результат запроса:

GROUPNAME
------------
ЗаводБольшой
Отдел1
Пользователи


Но если пользователь входит в несколько групп, например "ЗаводБольшой/Отдел1/Пользователи", "Друзья/Собутыльники", "Самодеятельность/Клоуны", то что должен вернуть этот пресловутый "один" запрос?
...
Рейтинг: 0 / 0
14.02.2008, 15:33
    #35133218
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
mcureenabА как же 1НФ?
Спасибо, не надо :)
...
Рейтинг: 0 / 0
14.02.2008, 16:45
    #35133511
Cane Cat Fisher
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
_мод mcureenabА как же 1НФ?
Спасибо, не надо :)

Очевидно, применением нулевой нормальной формы количество таблиц можно свести к нулю.

:-)
...
Рейтинг: 0 / 0
14.02.2008, 16:53
    #35133545
FAndrew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
mcureenabА как же 1НФ?
А как же неограниченная глубина иерархии групп?
...
Рейтинг: 0 / 0
14.02.2008, 18:40
    #35133934
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16 пишет:
> Необходимо разработать структуру которая будет содержать следующие объекты:
>
> 1) Группа ресурсов
> 3) Ресурс

Это -- очень простая БД, в чем проблема-то ? Бери и пиши.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
14.02.2008, 19:36
    #35134017
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Feg16создать одну таблицу, из которой одним запросом ( На всякий случай ("Я пока не силен в разработке БД ") - один запрос может обрабатывать и N таблиц. Какие-то еще причины все паковать в одну таблицу?
...
Рейтинг: 0 / 0
14.02.2008, 21:19
    #35134133
Vladimirovich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Composit pattern?
...
Рейтинг: 0 / 0
27.02.2008, 15:56
    #35158302
alex999kon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Дай мне твой E-Mail есть решение, поверь и не такие вложенности можно провернуть, главное не нарушить ограничения в Access
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
02.03.2009, 11:15
    #35845473
vinger4
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
Создаём табличку: подчинённый объект - родительский объект (основной ключ - оба поля). В этой табличке - все подчинения хранятся: как групп друг другу, так и людей к группам. В другой табличке можно хранить все объекты - как групп так и людей, которых различать по полю "тип объекта"
...
Рейтинг: 0 / 0
02.03.2009, 11:49
    #35845563
proposed amendment
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
vinger4Создаём табличку: подчинённый объект - родительский объект (основной ключ - оба поля). В этой табличке - все подчинения хранятся: как групп друг другу, так и людей к группам. В другой табличке можно хранить все объекты - как групп так и людей, которых различать по полю "тип объекта"

этому топику уже больше года - внимательнее смотрите на даты сообщений
...
Рейтинг: 0 / 0
05.03.2009, 14:25
    #35853367
Feg16
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужны идеи по структуре
proposed amendmentvinger4Создаём табличку: подчинённый объект - родительский объект (основной ключ - оба поля). В этой табличке - все подчинения хранятся: как групп друг другу, так и людей к группам. В другой табличке можно хранить все объекты - как групп так и людей, которых различать по полю "тип объекта"

этому топику уже больше года - внимательнее смотрите на даты сообщенийА ты умных людей не трогай, один хрен эта задача за год еще не решена, вернее временно забили на нее. Но все таки, вопрос заключался как потом все это вытащить одним запросом? То что ты ответил - знает даже наша техничка которая шваброй сквид вытирает =)
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Нужны идеи по структуре / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]