Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Нормализация банковского счета [MSSQL]


федя ©   (2011-03-24 22:58:00) 

Есть ли смысл привести к нормальной форме хранение 20-ти значного банковского счета, в составе счета имеется раздел баланса - 1 символ, счет первого порядка - 2 символа, счет второго порядка - 2 символа, код валюты - символа, контрольный разряд - 1 символ, 4 символа определяющие принадлежность к подразделению (БАНК/ПОДРАЗДЕЛЕНИЕ) и 7 символов собсвтенно номер.

Соответственно есть несколько вариантов хранения, самый простой char(20), либо самый сложный:
=======================================
- ID счета
- ID счет второго порядка
- ID код валюты
- char(1) контрольный разряд
- ID банк
- ID подразделение
- char(7) номер счета

=======================================

- ID счета второго порядка
- char(2) номер счета второго порядка
- ID счета первого порядка

=======================================

- ID счета первого порядка
- char(2) номер счета первого порядка
- ID раздела баланса

=======================================

- ID раздела баланса
- char(1) раздел баланса

=======================================

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

предполагается, что счетов 5 млн. штук.

и счета необходимо будет искать как по = так и по like.


ssnakess   (2011-03-28 19:06:00) [1]

ИМХО, никакого смысла в этом нет, да и по опыту работы тоже нет :)
обычное поле типа char(20)


Медвежонок Пятачок   (2011-03-25 10:09:00) [2]

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


Sergey13   (2011-03-25 10:02:00) [3]

> [0] федя   (24.03.11 22:58)
ИМХО.
Смотря какая работа будет в основном производиться над счетом. Если просто печать в платежке - то не надо. Если цель программы анализ по составляющим счета - может и есть смысл.


sniknik   (2011-03-25 07:51:00) [4]

имеет смысл выделить "валюту, банк и подразделение" в случае если нужны отчеты/группировки/объединения по ним...
если в самой базе не делается (ну к примеру для отчетов служит OLAP куда передаются данные время от времени), то и это лишнее (в олап можно передавать с разбивкой, ведь структура счета известна, и вряд ли поменяется).


Abramov Petr V.   (2011-03-25 00:34:00) [5]


> Есть ли смысл привести к нормальной форме хранение 20-ти
> значного банковского счета, в составе счета имеется

нету, по простой причине: нормализацию придумали не для того, чтоб студентов замучать с застенках вуза, а в данном случае, чтоб
- при изменении наименования(кода, номера) раздел баланса - 1 символ, счет первого порядка - 2 символа, счет второго порядка - 2 символа, код валюты - символа,не пришлось перенумеровывать все счета.
т.к это ситуация из ряда вон выходящая (хотя и возможная, в 1997 так было), у всей страны поменяются номера счетов, то

> Игорь Шевченко ©   (24.03.11 23:31) [1]
>
>
> > Есть ли смысл привести к нормальной форме хранение 20-
> ти
> > значного банковского счета
>
>
> нету


Игорь Шевченко   (2011-03-24 23:31:00) [6]


> Есть ли смысл привести к нормальной форме хранение 20-ти
> значного банковского счета


нету


Наверх

Титульная страница Поиск, карта сайта Написать письмо