|
|
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Приветствую всех! Необходим совет по структуре, хотелось бы узнать, верно ли я вижу ее, может есть советы. Необходимо создать БД для учета сотрудников, в каком подразделение и на какой должности они работали (т.е. перевели с одной должности на др. или ушел в др. подразделение на др. должность) таблица 1 PK: man_id Фио №паспорта Пол Дата рождение Таблица 2 (Подразделение) PK: SubID имя Таблица 3 (Должность) PK: Post_id имя Таблица 4 (История) PK: HysID FK: PostID FK: man_id Дата начала Дата окончания Какие представления имеются, приму любой совет. Может есть серьезные косяки. Заранее спасибо всем. (СУБД MS SQL) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2008, 00:17 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Почти традицией стало ФИО и паспортные данные хранить в отдельной таблице, поскольку они могут меняться. Историю я бы сделал с одной датой и полем "Действие". Тогда добавляется табличка ДействиеКодНазвание Где действие это принят, уволен, переведен, совмещение, совместительство ну и т.д... ---------- Cache for Windows (Intel) 2007.1 (Build 369) Fri Jun 15 2007 15:25:42 EDT Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 08:53 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Аналогичное добавление, документ тоже принято в отдельную таблицу заводить и хранить в нескольких полях тип документа,серию,номер,дату выдачи,основание. История тоже по логике должна иметь ссылку на документ - являющийся основанием для поступления/перевода/увольнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 23:56 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
может подразделения елкой сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 05:28 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
CYBERDREAMPK: man_id Лучше person_id, а то женщины могут обидеться... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 07:22 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Я так понял, для каждого подразделения свой набор должностей? Тогда в таблице Должность не хватает ссылки на Подразделение, иначе в таблице История не хватает ссылки на Подразделение. krvsaИсторию я бы сделал с одной датой Я бы все-таки историю сделал бы с двумя датами, ради производительности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 07:30 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Паспорта лучше сделать в отдельной таблице. Они могут меняться при утере, замужестве и т.п. Подразделения тоже гвозями не прибиты - сливаются, разделяются, меняетяс структура и т.п. Смену девичей фамилии на мужнину как будете отрабатывать ? В общем как всегда, как только доходит до работы с реальной жизнью полудюжины табличек сразу перестает хватать. Насколько глубоко вам надо проработать ваше решение - думайте сами по ситуации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 08:05 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Le Peaceисторию сделал бы с двумя датами, ради производительности. "Производительность" она разная бывает. Т.ч. всякое ограничение (как и расширение) это палка о двух концах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 08:57 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
krvsa"Производительность" она разная бывает. Т.ч. всякое ограничение (как и расширение) это палка о двух концах... Да, но в данной ситуации, имхо, запросы типа @Date between BeginDate and EndDate будут чаще, чем изменение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2008, 18:50 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Le Peaceбудут чаще, чем изменение. А кто их считал? В любом случае наше дело предложить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2008, 08:25 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
krvsa Le Peaceбудут чаще, чем изменение. А кто их считал? Статистика - наука точная (с) :) krvsa В любом случае наше дело предложить... +1 :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2008, 07:22 |
|
||
|
Структура БД
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. Остановился вообщем на след. структуре. person PK: man_id Фио №паспорта Пол Дата рождение Таблица 2 (Подразделение) PK: SubID имя Таблица 3 (Должность) PK : Post_id имя Мин. ЗП Макс. ЗП Таблица 4 (История) PK: HysID FK: PostID FK: man_id Дата начала Дата окончания Хотя в принципе можно было сделать в посл. таблице сделать первичными ключами man_id + Дата начала. Но что то не получилось это сделать.. Еще раз всем спасибо ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2008, 16:14 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=105&tid=1543929]: |
0ms |
get settings: |
4ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 338ms |

| 0 / 0 |
