Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Типы пользователей / 6 сообщений из 6, страница 1 из 1
11.06.2010, 17:03
    #36683407
ICP
ICP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
Добрый день!

Подскажите ,пожалуйста, как лучше организовать архитектуру для хранения разных типов пользователей (заказчик, поставщик, админ). В случае когда у них часть полей одинаковая (login, еmail, passwd). А вот остальные специфичны для конкретного типа (например пол, дата рождения, название магазина).

СУБД Mysql.
...
Рейтинг: 0 / 0
11.06.2010, 17:29
    #36683481
LSV
LSV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
Введите понятие атрибутов.

Сделайте набор атрибутов для сущности "пользователь".
В процессе заполнения карточки пользователя занесите в карточку один или несколько атрибутов из заранее настроенных.

ЗЫ: по умному не так все просто, т.к. атрибут может быть довольно сложным и состоять из нескольких под-атрибутов. А еще полезно иметь срок действия атрибута (периодический реквизит).
...
Рейтинг: 0 / 0
11.06.2010, 17:38
    #36683501
ICP
ICP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
LSVВведите понятие атрибутов.

Сделайте набор атрибутов для сущности "пользователь".
В процессе заполнения карточки пользователя занесите в карточку один или несколько атрибутов из заранее настроенных.

ЗЫ: по умному не так все просто, т.к. атрибут может быть довольно сложным и состоять из нескольких под-атрибутов. А еще полезно иметь срок действия атрибута (периодический реквизит).

Спасибо, но не очень понятно. Не могли бы Вы показать на примере схемы табличек как это делается.

Мне кажется, должен быть какой-то обкатанный подход. Смутило в основном, только то, что есть поля специфичные для типа пользователя.
...
Рейтинг: 0 / 0
13.06.2010, 20:34
    #36685141
ICP
ICP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
Поделитесь опытом, пожалуйста.
...
Рейтинг: 0 / 0
14.06.2010, 05:16
    #36685455
StalkerS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
Обычно для подтипов либо делают одну таблицу, куда складывают все поля всех подтипов и неиспользуемые поля конкретного подтипа заполняют нулами, либо делают одну таблицу с общими свойствами, и по одной таблице для каждого подтипа с различающимися полями. Что выбрать зависит от количества различных атрибутов, использования системы и тд
...
Рейтинг: 0 / 0
16.06.2010, 16:03
    #36690431
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Типы пользователей
StalkerS,

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


Конкретно в данном случае лучше говорить об учётной записи пользователя в системе (login, password и т.п.) которая одинакова для всех и о роли пользователя, которая будет содержать разные атрибуты для разных ролей. Таким образом от наследования (которое в реляционных СУБД вообще говоря не поддерживается) мы естественым образом перейдём к простой ассоциации.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Типы пользователей / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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