Список предметов
Определяем набор данных для БД
10 / 16

Примечание. Данный пример создания базы данных является учебным, поэтому содержит упрощенную модель данных.

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

Выделим объекты, которые участвуют в процессе реализации договора депозита:

  • Банк
  • Клиент (физическое лицо)
  • Клиент (юридическое лицо)
  • Условия депозита
  • Договор (у нас может быть много договоров на разных или одинаковых условиях)
  • Счета клиентов

Теперь, для каждого из определенных нами объектов необходимо определить объем информации, которая к ним относится, чтобы хранить в базе данных. В дальнейшем, этот набор информации должен стать полями таблиц данных, которые будут храниться в БД.

Почему мы разделили клиентов на физических и юридических лиц? Да потому, что с точки зрения как правовой, так и банковской - это совершенно разные сущности, на них распространяются совершенно разные правила и правовые нормы. Таким образом и в базе данных у нас нет никаких причин их "смешивать".

Начнем с клиентов - физических лиц. Для того, чтобы оперировать информацией по какому-либо физическому лицу, прежде всего, нам нужно будет его идентифицировать. Каким образом это можно сделать? Прежде всего, это паспортные данные и индивидуальный налоговый номер. Также, нас интересует возможность связаться с клиентом. Поэтому нам потребуется его адрес и контактный телефон. 

Набор данных по клиенту пока выглядит таким образом:

Физические лица


Наименование данныхТип данныхПримечание
Серия паспортаСтрокаСерия и номер паспорта обязательны для идентификации
Номер паспортаЧисло
ИННЧислоОбязательно для идентификации
Адрес пропискиСтрокаАдрес прописки будет нужен для оформления юридических действий
Адрес проживанияСтрокаЭтот адрес будет нужен для связи с клиентом, направления ему писем
Контактный телефонСтрокаПотребуется для быстрой связи с клиентом. Тип данных - могло быть и число, но для простоты учебного примера - пусть будет строка

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

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

Юридические лица


НаименованиеТип данныхКомментарий
Наименование юр.лицаСтрокаНаименование - обязательный параметр, однако, встречаются организации с одинаковыми названиями
КодЧислоКод организации однозначно ее идентифицирует
Форма собственностиВиды форм собственности определяются законодательством
Юридический адресСтрокаАдрес, по которому зарегистрировано юр. лицо
Адрес для перепискиСтрокаАдрес, по которому следует направлять почтовую корреспонденцию. Часто, это - разные адреса
ТелефонСтрокаКонтактный телефон приемной
Директор
Главный бухгалтер

Как видно, у нас не указан "тип данных" для хранения информации в базе данных о директоре и главном бухгалтере. Мы поговорим об этом позднее, когда будем проектировать структуру нашей базы данных, а пока просто заметим для себя, что директор и главный бухгалтер, фактически, являются физическими лицами. А объект такого типа (физическое лицо) у нас в базе данных предусмотрен и описан.

Условия депозитов


Наименование данныхТип данныхПримечание
Срок начала действия условий депозитаДата
Срок окончания действия условий депозитаДатаВозможна ситуация, когда банк после определенного момента больше не принимает депозиты на определенных условиях. Мы должны это предусмотреть
Условия действительны для физических лицЛогическийПредполагается информация да/нет
Условия действительны для юридических лицЛогическийПредполагается информация да/нет
Минимальная сумма депозитаЧисло
Минимальный срок размещения (дней)Число
Процентная ставкаЧисло
Условия выплаты процентовМы пока не детализируем данный пункт, но знаем, что проценты могут выплачиваться помесячно, в конце срока, как сложные проценты и т.д.
Возможно ли пополнение депозитаЛогический
Допускается ли досрочное снятиеЛогическийДосрочное снятие - это, фактически, разрыв условий договора, поэтому, как правило, при выплате процентов на вклад начисляются проценты по ставке, иной, чем изначально оговоренная
Процентная ставка при досрочном снятииЧисло

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

Договоры


НаименованиеТип данныхПримечание
Дата заключенияДата
НомерСтрокаДоговор может быть пронумерован, например, как 1/3-55, поэтому тип данных - строка
Дата окончанияДатаДоговор может иметь пункт об автоматической пролонгации, однако для простоты примера, будем считать, что этого не происходит
Договор с юр/физ лицомЛогическийПредположим, что 0 - юридическое лицо, а 1 - физическое
КонтрагентЗдесь будем хранить ссылку на юридическое или физическое лицо, но как это будем делать - рассмотрим позднее

Заметим, что договор может быть заключен, но не исполнен. Поэтому факт существования договора не означает наличие депозита.

Счета


НаименованиеТип данныхПримечание
Группа счетаЧислоСогласно утвержденному плану счетов банков в Украине это должна быть цифра "26" всегда
Подгруппа счетаЧисло"10", если это - краткосрочный депозит юр. лица
"15", если это - долгосрочный депозит юр. лица
"30", если это - краткосрочный депозит физ. лица
"35", если это - долгосрочный депозит физ. лица
Номер счетаЧислоОстальные 10 цифр, которые формируют номер счета
Дата открытияДата
Дата закрытияДата
ДоговорСсылка на договор

Теперь отметим один "неприятный" момент. Сумма средств на счете может меняться в любой момент времени, в связи с операциями по счету.

0  


 База данных депозитов (учебный пример) | Описание курса | Создаем таблицы и проводим нормализацию