|
|
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! проектирую складскую БД. В базе есть таблицы Empl, Users, Groups, Users_Groups с полями: Empl - сотрудники ID_Empl ID_Contrag- связь с таблицей контрагенты ID_Depart- связь с таблицей департаменты ID_Posts- Должности ID_Contract FirstName LastName Phones Resident Salary IncomeTax- Ндс HomeAddr PostStart Users - пользователи БД ID_User ID_Group name Login Passw Comment Groups - группы пользователей БД ID_Group Name Users_Groups - для связи многие-ко-многим ID ID_User ID_Group Думаю перенести поля таблицы Empl(сотрудники) в Users. Есть по какими-нибудь причинами необходимость в отдельных таблицах для сотрудников и пользователей БД? покритикуйте, посоветуйте, плз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2015, 23:36 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
А в словаре БД разве нет инфы про пользователей, ролей, групп и т.д. Зачем изобретать велосипед? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2015, 23:43 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
SERG1257А в словаре БД разве нет инфы про пользователей, ролей, групп и т.д. Зачем изобретать велосипед? Вы говорите о security2.fdb? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2015, 23:49 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
или о системных таблицах самой БД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2015, 23:51 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Delphi159 Вы говорите о security2.fdb? Не знаю что это такое Delphi159 или о системных таблицах самой БД? Да. Кроме русского наименования (фио у пользователя) не вижу ничего нового. Зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 00:17 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
SERG1257Delphi159 или о системных таблицах самой БД? Да. Кроме русского наименования (фио у пользователя) не вижу ничего нового. Зачем? Не понял о чём вы говорите! Чтобы использовать системные таблицы? Delphi159 Думаю перенести поля таблицы Empl(сотрудники) в Users. Есть по какими-нибудь причинами необходимость в отдельных таблицах для сотрудников и пользователей БД? Я говорю о том, чтобы убрать таблицу empl и её поля перенести в Users. Зачем в БД таблица сотрудников, если там заходят только сотрудники, которые можно найти в Users? Залогиняются сотрудники, которые для БД являются пользователями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 00:44 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Delphi159Есть по какими-нибудь причинами необходимость в отдельных таблицах для сотрудников и пользователей БД? покритикуйте, посоветуйте, плз Могут быть сотрудники, которые не являются пользователями (например, уборщица), и пользователи, которые не являются сотрудниками (например, внешние аудиторы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 09:09 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинDelphi159Есть по какими-нибудь причинами необходимость в отдельных таблицах для сотрудников и пользователей БД? покритикуйте, посоветуйте, плз Могут быть сотрудники, которые не являются пользователями (например, уборщица), и пользователи, которые не являются сотрудниками (например, внешние аудиторы).+1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 10:09 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
по сабжу: тоже задавался таким вопросом. В принципе можно сделать одну таблицу, где будет признак "Это Юзер". Тогда не будет проблем с уборщицами или внеш.аудиторами. Но с другой стороны в КИС "юзеры" зачастую зачитываются гораздо чаще не_юзеров и вопрос производительности может стать актуальным. Тем более, что отдельная таблица юзеров будет узкой и короткой. В то время как общая таблица будет широкой и во много раз длиннее (например на заводе). Думаю не существует единого рецепта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 10:10 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
LSVпо сабжу: тоже задавался таким вопросом. В принципе можно сделать одну таблицу, где будет признак "Это Юзер". Тогда не будет проблем с уборщицами или внеш.аудиторами. Но с другой стороны в КИС "юзеры" зачастую зачитываются гораздо чаще не_юзеров и вопрос производительности может стать актуальным. Тем более, что отдельная таблица юзеров будет узкой и короткой. В то время как общая таблица будет широкой и во много раз длиннее (например на заводе). Думаю не существует единого рецепта. Плохое решение. Т.к. могут быть пользователи не сотрудники, например, "гость". А так обычно решается добавлением новой абстракции. Приблизительно так 1) Person - конкретный человек, все его данные (ФИО, пол, год рождения, паспорт) 2) Employee - Сотрудник, имеет ссылку на Person и должность (свзяь Employee_Должность, т.к. сотрудник может совмещать должности) 3) User - пользователь, может имеет ссылку на Person (связь ч/з User_Person) и роли (связт ч/з User_Groups) Опять же объединять Person и Employee так же плохо, т.к. могут быть конкретные лица которые не являются сотрудниками, но могут иметь доступ к данным. Где-то так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 11:55 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Users - сотрудники/пользователи Memberships - логины В Users делаете ссылку на MembershipID. Он может быть пустым. Тогда если у сотруднка нет логина (доступа в базу) то это простой сотрудник, если есть, то это пользователь. Все настройки доступа, связи с ролями и привилегиями завязываете на таблицу Memberships. При желании можно переключить сотрудника на другой логин с другими пономочиями. Во всех документах ссылаетесь на Users (создатели там всякие и т.п.). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 12:16 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Плохое решение. Т.к. могут быть пользователи не сотрудники, например, "гость".Какую проблему составляет сделать в таблице признак "Сотрудник" ??? Иметь признаки "Пользователь", "Сотрудник", "Гость" (опционально). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 12:42 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
LSVПлохое решение. Т.к. могут быть пользователи не сотрудники, например, "гость".Какую проблему составляет сделать в таблице признак "Сотрудник" ??? Иметь признаки "Пользователь", "Сотрудник", "Гость" (опционально). А зачем плодить сущности без необходимости? А зачем нужен признак "гость", когда он там не нужен. Для ТС, на сколько я понял, главное что есть сотрудники и все остальные, плюс пользователи и все остальные. Т.е. множества А (сотрудники) и Б (пользователи), они могут пересекаться частично, хотя для ТС нужно хранить их объединение. Остальные интересны постольку поскольку, они могут оказаться либо в А но не в Б, либо в Б но не в А. Те что не в А и не в Б ТС не волнуют. Почему нужна отдельная сущность Person я пояснил в посте выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 13:11 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
по сабжу: это тот случай когда оптимальное решение зависит от задачи. В каких-то случаях надо делать, как указал mad_nazgul, в других (обычно простых) можно обойтись одной таблицей. Нет идеальных решений. Подобные проблемы (усложнение ради правильности) можно найти в любом, даже элементарном модуле. Пример ? Фамилию следует хранить в отдельной таблице, т.к. она м.б. непостоянной и фигурировать в офиц. документах, н-р доверенностях. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 13:37 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
mad_nazgul Плохое решение. Т.к. могут быть пользователи не сотрудники, например, "гость". А так обычно решается добавлением новой абстракции. Приблизительно так 1) Person - конкретный человек, все его данные (ФИО, пол, год рождения, паспорт) 2) Employee - Сотрудник, имеет ссылку на Person и должность (свзяь Employee_Должность, т.к. сотрудник может совмещать должности) 3) User - пользователь, может имеет ссылку на Person (связь ч/з User_Person) и роли (связт ч/з User_Groups) Опять же объединять Person и Employee так же плохо, т.к. могут быть конкретные лица которые не являются сотрудниками, но могут иметь доступ к данным. Где-то так. Мне понравился это решение, но хочу уточнить 2 момента: 1) Как я вас понял, в таблице Person включаем только тех людей, кто не сотрудник ? например, 1."гость"-осматривает мою программу,собирается купить 2. "будущий оператор программы"-пока не принимали на работу и изучает программу 3. Аудит? Тогда в таблице Person зачем для них сделать запись(ФИО, пол, год рождения, паспорт)- это же будет бесполезная, никому ненужная информация? Или ничего не добавить в Person и для их всех в Users создать один запись- guest(гость) и давать им доступ к БД по роли guest? 2) Если я правильно рассуждаю в первом вопросе, тогда таблица Person теряет значение- не так ли? dma_caviar Users - сотрудники/пользователи Отдельные таблицы persons и users или признаки "Пользователь", "Сотрудник" как LSV предлагает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 16:40 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Delphi159, Таблица одна. Если у сотрудника есть ссылка на логин, значит это сотрудник-пользователь, если нет значит просто сотрудник. А вам зачем кстати отличать сотрудников от пользователей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 16:45 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
dma_caviarDelphi159, Таблица одна. Если у сотрудника есть ссылка на логин, значит это сотрудник-пользователь, если нет значит просто сотрудник. А вам зачем кстати отличать сотрудников от пользователей? Не зачем. Сейчас у меня отдельные таблицы для сотрудников и для пользователей БД и просто думаю на счет их объединения в одну. Но таблицы users, usergroups, roles- это одна группа таблиц, ответственные за безопасность БД и права доступа, а в этой цепи запихнуть persons вместо таблицы Users, пока не могу решать, взвешиваю всё за и против. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 17:24 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Delphi159Не зачем. Сейчас у меня отдельные таблицы для сотрудников и для пользователей БД и просто думаю на счет их объединения в одну. Но таблицы users, usergroups, roles- это одна группа таблиц, ответственные за безопасность БД и права доступа, а в этой цепи запихнуть persons вместо таблицы Users, пока не могу решать, взвешиваю всё за и против. А где Вы видите хоть одно "за" объединения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 17:33 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинDelphi159Не зачем. Сейчас у меня отдельные таблицы для сотрудников и для пользователей БД и просто думаю на счет их объединения в одну. Но таблицы users, usergroups, roles- это одна группа таблиц, ответственные за безопасность БД и права доступа, а в этой цепи запихнуть persons вместо таблицы Users, пока не могу решать, взвешиваю всё за и против. А где Вы видите хоть одно "за" объединения? LSV 17292394 17291265 . Хотя я тоже уже больше сомневаюсь. Ищу оптимальное решение и не хочу быть белой вороной среды черных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 17:52 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Я не могу понять, почему вы различаете эти понятия. Это все люди, работающие в организации. Просто у кого-то есть доступ в базу, у кого-то нет. А справочник один. Зачем мозг админам выносить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 17:57 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
dma_caviar, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 17:57 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
dma_caviarDelphi159, Если у сотрудника есть ссылка на логин, значит это сотрудник-пользователь, если нет значит просто сотрудник. если нет ссылки на логин- это не значит что просто сотрудник, это значит что или просто сотрудник или "гость"(аудит, пока не назначен на должность и т.д.). По этому признаку нельзя их различать. А как вы их различаете? Как узнать что гость а не "просто сотрудник"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 18:38 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Delphi159если нет ссылки на логин- это не значит что просто сотрудник, это значит что или просто сотрудник или "гость"(аудит, пока не назначен на должность и т.д.). По этому признаку нельзя их различать. А как вы их различаете? Как узнать что гость а не "просто сотрудник"? А что означает Гость, какие-то особенности в доступе? Не роль ли это?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 18:45 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
галочка "работает" очень сомнительна, вчера уволился, а сегодня принят заново, где история? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 18:53 |
|
||
|
таблицы users и employees
|
|||
|---|---|---|---|
|
#18+
Nafгалочка "работает" очень сомнительна, вчера уволился, а сегодня принят заново, где история? Это я вам на коленке набросал)) Вот вам история. А вообще в каждом проекте свои требования. Лишние галочки и поля не навязываем. Нам быстрее с нуля все сделать, чтобы было только то что нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2015, 19:00 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=22&tid=1540627]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 149ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...