Моделирование структуры реляционной БД в методологии IDEF 1X
Связь вида 1-М, т. е. у клиента может быть открыто множество счетов, но один счет закреплен лишь за одним клиентом банка. Связь идентифицирующая, что значит, что в БД не может быть записи о счете без ссылки на какого-либо клиента. Связь вида 1-М, т. е. в отделении может быть много сотрудников, но один сотрудник принадлежит лишь одному отделению. Связь идентифицирующая, что значит, что в БД… Читать ещё >
Моделирование структуры реляционной БД в методологии IDEF 1X (реферат, курсовая, диплом, контрольная)
Логический уровень моделирования
Моделирование структуры реляционной БД осуществляется с помощью CASE-средства ERwin. ERwin — средство разработки структуры базы данных (БД). ERwin сочетает графический интерфейс Windows, инструменты для построения ER-диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную поддержку ведущих реляционных СУБД и настольных баз данных. С помощью ERwin можно создавать или проводить обратное проектирование (реинжиниринг) баз данных.
В ERwin существуют два уровня представления и моделирования — логический и физический. Логический уровень означает прямое отображение фактов из реальной жизни. Например, люди, столы, отделы, собаки и компьютеры являются реальными объектами. Они именуются на естественном языке, с любыми разделителями слов (пробелы, запятые и т. д.). На логическом уровне не рассматривается использование конкретной СУБД, не определяются типы данных (например, целое или вещественное число) и не определяются индексы для таблиц.
База данных содержит 7 таблиц (рис. 3.3.), которые взаимосвязаны между собой связью 1: М (один-ко-многим).
Каждая таблица имеет поля с обозначением типов данных и первичный ключ, который идентифицирует таблицу. Зависимые таблицы кроме первичных ключей содержат вторичные ключи, связывающие таблицы между собой.
База данных «Заявки» состоит из следующих сущностей:
- 1. Cities— здесь отображается информация о названии города и количества населения в нем
- 2. Clients— сущность, отражающая информацию, позволяющей однозначно идентифицировать клиента банка по присвоенному ему уникальному номеру, а также его паспортные и контактные данные.
- 3. Credit_type— показывает какие виды кредитов предоставляет банк и количество дней по регламенту на рассмотрение заявки
- 4. Departments— отображается, информация о подразделениях банка
- 5. Employees— предоставлена информация о сотрудниках банка
- 6. Credit_request— отражает полную информацию о заявках
- 7. Credit_issue- сущность, которая предоставляет информацию сотруднику о выдаче кредита клиенту
В таблице 3.1.показаны атрибуты сущностей.
Таблица 3.1.
Атрибуты сущностей.
Cities. | |||
city population. | Varchar2(50) Number. | PK. | Название города Количество населения в городе. |
Clients. | |||
Client_id. Client_full_name. Birth_date. Passport_num. Passport_date. Passport_issuer. Phone. Address. | Number. Varchar2(200). Date. Varchar2(20). Date. Varchar2(100). Varchar2(20). Varchar2(500). | PK. | ID клиента ФИО клиента Дата рождения Номер паспорта Дата выдачи паспорта Кем выдан паспорт Контактный телефон Адрес. |
Credit_type. | |||
Credit_type_id. Credit_type_name. Reglament_days. | Number. Varchar2(50). Number. | PK. | ID номер типа кредита Название типа кредита Количество дней по регламенту на рассмотрение заявки по кредиту. |
Departments. | |||
Department_id. Department_name. Is_retail. City. | Number. Varchar2(100). Varchar2(1)not null. Varchar2(50). | PK. FK. | ID подразделения Название подразделения или отделения Внутреннее Подразделение или отделение Город, где расположено подразделение. |
Employees. | |||
Employee_id. Full_name. Department_id. Is_active. | Number. Varchar2(100). Number. Varchar2(1)not null. | PK. FK. | ID сотрудника ФИО сотрудника. ID подразделения Сотрудник действующий или не работает. |
Credit_request. | |||
Request_id. Credit_type_id. Employee_id. Client_id. Submit_date. Accept_date. Is_accepted. Accepter_id. Comments. Amount. | Number. Number not null. Number not null. Number not null. Date. Date. Varchar2(1). Number. Number. | PK. FK. FK. FK. FK. | Номер заявки на кредит. ID типа кредита Сотрудник принявший заявку. ID клиента Дата создания заявки Дата одобрения заявки Одобрено или отказано или на расм-ии Сотрудник принимающий решение Комментарий к заявке Сумма кредита. |
Credit_issue. | |||
Request_id. Department_id. Credit_issue_date. | Number. Number. Date. | PK. FK. | Номер заявки на кредит Отделение, в котором был выдан кредит Дата выдачи кредита. |
Описание связей.
1. Вид кредита — Заявки Клиент может иметь счета в банке.
Счета могут быть открыты у клиента.
Связь вида 1-М, т. е. у клиента может быть открыто множество счетов, но один счет закреплен лишь за одним клиентом банка. Связь идентифицирующая, что значит, что в БД не может быть записи о счете без ссылки на какого-либо клиента.
Со стороны родительской сущности:
D:R — нельзя удалить запись из таблицы «Вид кредита», если есть заявка на данный вид кредит.
U:R — нельзя присвоить виду кредита другой номер заявки, если данный вид кредита прикреплен к определенному номеру заявки.
Со стороны дочерней сущности:
I:R — нельзя создать заявку без ссылки на вид кредита.
U:R — нельзя изменить заявку на несуществующее значение.
2. Сотрудники — Заявки Сотрудники могут создавать заявки.
Определенная заявка прикреплена к одному сотруднику.
Связь вида 1-М, т. е. сотрудник может создавать одновременно несколько заявок.
Со стороны родительской сущности:
D:R — нельзя удалить запись из таблицы «Сотрудники», если у сотрудника есть заявка.
U:R — нельзя присвоить сотруднику заявку, если у него нет заявки.
Со стороны дочерней сущности:
I:R — нельзя создать заявку, без ссылки на существующего сотрудника.
U:R — нельзя изменить заявку, присвоив несуществующего сотрудника.
3. Клиент-Заявки Клиент может иметь заявки.
Заявки относятся к какому-либо клиенту.
Связь вида 1-М, т. е. у одного клиента может быть много заявок на кредит, но одна заявка может принадлежать только одному клиенту. Связь идентифицирующая, что значит, что в БД не может быть записи заявки без ссылки на определенного клиента.
Со стороны родительской сущности:
D:R — нельзя удалить запись из таблицы «Клиент», если у клиента есть заявка.
U:R — нельзя присвоить заявке другой номер, если заявка прикреплена к клиенту.
Со стороны дочерней сущности:
I:R — нельзя создать заявку, без ссылки на существующего клиента.
U:R — нельзя изменить заявку, присвоив несуществующего клиента.
4. Статус заявки — Заявки Статус заявки принадлежит заявке.
Заявка определяет статус заявки.
Связь вида 1-М, т. е. один статус заявки может принадлежать нескольким заявкам, но заявка закреплена за конкретным статусом. Связь идентифицирующая, что значит, что в БД не может быть заявки без ссылки на какого-либо статуса заявки.
Со стороны родительской сущности:
D:R — нельзя удалить заявку, если у статуса есть заявка.
U:R — нельзя изменить статус, если за статусом прикреплена заявка.
Со стороны дочерней сущности:
I:R — нельзя создать заявку, без ссылки на существующего статуса.
U:R — нельзя изменить заявку, записав несуществующий статус.
5. ОтделенияСотрудники В отделении может быть много сотрудников.
Сотрудник может работать в одном отделении.
Связь вида 1-М, т. е. в отделении может быть много сотрудников, но один сотрудник принадлежит лишь одному отделению. Связь идентифицирующая, что значит, что в БД не может быть сотрудника без ссылки на отделения.
Со стороны родительской сущности:
D:R — нельзя удалить сотрудника, если он прикреплен к отделениию.
Со стороны дочерней сущности:
I:R — нельзя создать запись о сотруднике, без ссылки на номер отделения.
D:R — нельзя удалить запись о сотрудники, если существует ссылка на номер отделения.
6. Клиент — Выдача кредита.
ФИО клиента отражается в таблице «Выдачи кредита».
Выдача кредита может быть у определенного клиента.
Связь вида 1-М, т. е. у клиента могут несколько выдачей кредитов, но выдача кредитатолько одному клиенту. Связь идентифицирующая, что значит, что в БД не может быть выдачи кредита без ссылки на самого клиента.
Со стороны родительской сущности:
U:R — нельзя изменить данные клиента, без изменения данных о выдаче кредита.
Со стороны дочерней сущности:
I:R — нельзя создать запись выдачи кредита, без ссылки на существующего клиента.
D:R — нельзя удалить запись выдачи кредита, если существует клиент.