|
|
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
Исходные условия. Необходимо спроектироввать БД под Oracle. В самой базе под единицей записи понимается набор атрибутов из разных таблиц. (напримет, 1 запись это ФИО, адрес, иеющиеся документы, образование...) Необходимо Установить предусмотреть возможность установки СТАТУСА для 1 записи (например 2 запись - актуальна 4 запись - предварительная 8 запись - архив) Запись идентифицируется по номеру. Теперь , надо учесть что возможно изменится адрес (например) тогда запись должна иметь адрес1 - актуалдьный и адрес2 - предварительный (ввели, но еще нет распоряжения на изменение) Вот такая задачка. Может у кого какие соображения имеются. Если что не понятно поясню. Мне необходим механизм реализации, или пути решения. Спасибо за помощь. Если кого отвлек глупым вопросом - изините. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2006, 17:28 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
Сделать поле StatusID, либо, если статусов может быть одновременно несколько, то таблицу "многие ко многим" - id, RecordID, StatusID. С адресами - нужна ссылка на справочник адресов, у каждой записи адреса тоже свой статус. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2006, 17:43 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
согласен Но вот поясню. Вся Запись (весь массив атрибутов) имеет либо актуальный статус либо предварительный. Но у этой всей записи может быть несколдько подзаписей (только адрес, только документы, только образование) , которые в свою очередь имеют различные статусы. Например Вся запись - ФИО, Адрес1, Документы, Образование -> актуальная запись подзапись Адрес2 (введена в запись но нет приказа на изменение) -> Предварительная запись. И вот надо отсортировать по статусам ВСЮ ЗАПИСЬ ( весь массив атрибутов) какое наиболее оптимальное решение???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2006, 18:06 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
Вынести адрес в справочник. вместо ФИО, Адрес1, Документы, Образование сделать id, ФИО, Документы, Образование, Статус. И таблицу "справочник адресов" - id, RecordID, Адрес, Статус Тогда, например, записи 123, "Иванов", "Паспорт 123456", "Инженер" будут соответствовать записи 1, 123, "ул. Лесная", "Актуальный" и 2, 123, "ул. Полевая", "Предварительный" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2006, 19:05 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
Так понятно. Но хочу уточнить. Получается на каждую таблицу статус нужен? (если например и ФИО изменится - то СТАТУС и в ФИО добавить). Если так то понятно. Попробую сделать и посмотреть как будет работать. Спасибо за совет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2006, 11:13 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
А вообще как в будущем потом на экране пользователя отображать, что у данного предприятия было и другое название (это как пример). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2006, 09:54 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
RXAlexА вообще как в будущем потом на экране пользователя отображать, что у данного предприятия было и другое название (это как пример). фиксировать изменение статуса : статус - timestamp вся история - как на ладони ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2006, 10:15 |
|
||
|
Проектирование БД и учет статусов записи.
|
|||
|---|---|---|---|
|
#18+
RXAlexА вообще как в будущем потом на экране пользователя отображать, что у данного предприятия было и другое название (это как пример). По-видимому, нужно хранить не просто статус, но и историю изменений. Способов много, идеального - нет. Ищите по форуму, в т.ч. по моему нику. Было многократно. Посмотреть можно например здесь . А как отображать на экране - ну, например, выделяя цветом, или помечая особым значком-кнопкой (-ссылкой)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2006, 10:21 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33945965&tid=1545076]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
134ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 398ms |

| 0 / 0 |
