Описание структуры базы данных. Диаграммы

Принципы построения структуры и логики базы данных

  • Оптимальная, максимально простая, продуманная, научно обоснованная структура представления страховых данных – основная суть при проектировании системы.

  • Эффективные механизмы обработки и доступа к данным, надежность сохранения и непротиворечивость – максимальное следование реляционные теории.

  • Концептуальная целостность системы – структуры, логики данных, библиотек проекта.

  • Функциональность.

  • Представление информации в максимально детализированной виде с разбивкой платежей по объектам и рискам.

  • Структурированный учет аддендумов.

  • Соответствие структуры данных страховой теории и европейским стандартам.

  • Использование справочника клиентов.

Более 20-и диаграмм содержатся в поставляемой базе данных InsCom

В данном описании приведены две из них:

Структура полиса.

Включает учет адендумов, произвольного количества застрахованных объектов с произвольным наборов рисков по каждому объекту.

Включает план платежей - плановых, фактических и начисленных.

Структура урегулирования.

Включает претензии, пострадавшие объекты, оценки, резервы, план выплат - плановых, фактических и начисленных.

Опис міститься в базі даних InsCom

Запити:

Основні поля:

SELECT top 200 yds_fld.tabname, yds_fld.is_key, yds_fld.colname, yds_fld.descr + ' <' + yds_fld.type + '>.' AS f,

yds_serv.rem, yds_fld.order_fl

FROM yds_serv

RIGHT OUTER JOIN v_s_fld_count ON yds_serv.name = v_s_fld_count.tabname RIGHT OUTER JOIN yds_fld ON v_s_fld_count.tabname = yds_fld.tabname

WHERE (v_s_fld_count.tabname NOT LIKE 'x%') AND (v_s_fld_count.tabname NOT LIKE 'y%') AND (v_s_fld_count.tabname NOT LIKE 'w%') AND (v_s_fld_count.tabname <> 'tune_frm')

AND (yds_fld.colname NOT LIKE 'add[]%')

AND (yds_fld.colname NOT LIKE 'ai[]%')

AND (yds_fld.colname NOT LIKE 'au[]%')

AND (yds_fld.colname NOT LIKE 'ad[]%')

AND (yds_fld.colname NOT LIKE 'am[]%')

AND (yds_fld.colname NOT LIKE 'ID[]%') AND (yds_fld.colname <> 'note') AND (v_s_fld_count.count_f > 3)

Додаткові поля:

SELECT yds_adfl.descr, c_custom.customer, yds_adfl.c_custom, yds_adfl.c_typ_ag, yds_adfl.tab_name, yds_adfl.fld_name FROM yds_adfl LEFT OUTER JOIN c_custom ON yds_adfl.c_custom = c_custom.c_custom

Всі поля:

SELECT yds_fld.tabname, yds_fld.is_key, yds_fld.colname, yds_fld.descr + ' <' + yds_fld.type + '>.' AS f, yds_serv.rem, yds_fld.order_fl FROM yds_serv RIGHT OUTER JOIN v_s_fld_count ON yds_serv.name = v_s_fld_count.tabname RIGHT OUTER JOIN yds_fld ON v_s_fld_count.tabname = yds_fld.tabname