КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Пример проектирования БД
Рассмотрим процесс проектирования системы СКЛАД. Словесное описание системы следующее. На склад поступают материалы от различных организаций и от внутренних подразделений. На одну поставку прилагается документ, который включает несколько материалов. Документ визируется в бухгалтерии и на складе. Со склада изделия выдаются по требованиям для внутреннего использования и по счетам для продаж. Продажа осуществляется по продажным ценам, а выдача для внутреннего потребления – по учетным ценам, которые формирует бухгалтер. Материалы хранятся на разных складах, группируются по счетам учета и группам. В системе требуется обеспечить следующие функции: - ввод/редактирование документов на поступление и выдачу материалов; - ведение картотек. Система должна выдавать разнообразные отчеты. Например: - какие товары отпущены (приняты) указанным лицам за указанный период; - состояние складов на определенную дату; - движение товара (карточка) за определенный период; - сводный анализ выдачи групп материалов внутренним подразделениям; - отчет за месяц (оборотная ведомость движения товаров) В реальных системах, конечно, необходимо собрать все существующие виды документов, выявить все требования заказчика в беседах. Приведем содержание шагов по второй методике, т.к. она более формализована. 1. Определение состава документов, реквизитов этих документов, а также частоты их формирования. Для выбранной конкретной предметной области необходимо составить список документов и всех запросов к БД, которые формируются в этой предметной области (табл. 5.1). Таблица 5.1
2. Определение реквизитов документов и их форматов. Для каждого документа из табл. 5.1 необходимо составить список реквизитов, например, для документа «Требование на отпуск материалов» таблица будет такой (в табл. 5.2 представлен не весь список). Форматы реквизитов определяются из вида информации – символьная, цифровая, дата и их длины или разрядности. Таблица 5.2
3. Формирование аналитической таблицы предметной области. Для всех документов и нестандартных запросов заполняется аналитическая таблица по следующей форме (табл. 5.3). В таблицу заносятся все документы и из этих документов все реквизиты. Если в списке реквизитов есть такой реквизит, то он дополнительно не вносится, но делается отметка о наличии такого реквизита в данном документе. По такому же принципу заполняются возможные запросы пользователей. Частоты появления реквизита суммируются по всем документам и запросам за один календарный год.
Таблица 5.3
4. Разработка логического кортежа. По максимальной частоте использования реквизита, например 356 456, выбираем уникальную сущность для нашей предметной области. Это наименование материала и его код. Так как наименование материала имеет символьный формат, а код числовой (который удобнее для машинной обработки), в качестве уникальной (ключевой) сущности выбираем код материала. Атрибутами этой сущности в логическом кортеже будут все реквизиты из предметной области, причем их ранг будет определяться частотами использования реквизитов. Так, для нашего примера первым атрибутом будет наименование материала, затем цена, сумма и так далее по мере убывания частоты использования. Если частоты равны, то следует выбрать первым тот реквизит, который имеет большую логическую значимость. Если нет атрибута, который будет идентификатором, его следует добавить проектировщику. Во все сущности был введен атрибут КОД_… для идентификации объектов. 5. Выявление вычисляемых атрибутов. Такие атрибуты (например, СУММА МАТЕРИАЛА ПО ДОКУМЕНТУ) желательно не хранить в БД, их существование может быть оправдано лишь в случае более высокой производительности. При этом требуется предусмотреть процедуры поддержки непротиворечивости данных. 6. Выявление связей между реквизитами и определение сущностей. Объединение связанных реквизитов в сущности. Например, связи НОМЕР СКЛАДА –НАЗВАНИЕ СКЛАДА выявят сущность СКЛАД. 7. Выявление связей между сущностями и оформление спецификации. Анализируя задачу, получим следующую модель «сущность – связь» (рис. 5.6). Ниже приведен вариант возможного оформления спецификации для рассматриваемого примера. Типы сущностей: ПОСТАВЩИК, МАТЕРИАЛ, СКЛАД, ГРУППА, СЧЕТ УЧЕТА, ПОДРАЗДЕЛЕНИЕ, ДОКУМЕНТ ВНЕШНИЙ, ДОКУМЕНТ ВНУТРЕННИЙ. ПОСТАВЩИК: ключевой атрибут КОД_ПОСТАВЩИКА, описательный атрибут АДРЕС_ПОСТАВЩИКА. МАТЕРИАЛ: ключевой атрибут КОД_МАТЕРИАЛА, описательные атрибуты НАЗВАНИЕ, ЦЕНА УЧЕТНАЯ. ГРУППА: ключевой атрибут КОД_ ГРУППЫ, описательный атрибут НАЗВАНИЕ ГРУППЫ. СЧЕТ УЧЕТА: ключевой атрибут КОД_ СЧЕТА, описательные атрибуты НАЗВАНИЕ СЧЕТА, БУХГАЛТЕРСКИЙ НОМЕР. СКЛАД: ключевой атрибут КОД_СКЛАДА, описательный атрибут НАЗВАНИЕ СКЛАДА. ПОДРАЗДЕЛЕНИЕ: ключевой атрибут КОД_ПОДРАЗДЕЛЕНИЯ, описательные атрибуты НАЗВАНИЕ ПОДРАЗДЕЛЕНИЯ, НАЧАЛЬНИК. ДОКУМЕНТ ВНЕШНИЙ: ключевой атрибут КОД_ ДОКУМЕНТА, описательные атрибуты ДАТА_ ДОКУМЕНТА, НОМЕР_ ДОКУМЕНТА. ДОКУМЕНТ ВНУТРЕННИЙ: ключевой атрибут КОД_ ДОКУМЕНТА, описательные атрибуты ДАТА_ ДОКУМЕНТА, НОМЕР_ ДОКУМЕНТА. Типы связей: - СОСТАВ ДОКУМЕНТОВ ВНЕШНИХ, - СОСТАВ ДОКУМЕНТОВ ВНУТРЕННИХ, - ПОСТАВЛЯЕТ-ПОЛУЧАЕТ_ВНЕШНИЕ, - ПОСТАВЛЯЕТ-ПОЛУЧАЕТ ВНУТРЕННИЕ ХРАНИТСЯ_НА_СКЛАДЕ, - НАХОДИТСЯ В ГРУППЕ, - НАХОДИТСЯ НА СЧЕТЕ. ПОСТАВЛЯЕТ–ПОЛУЧАЕТ_ВНЕШНИЙ: отображение 1:М от ПОСТАВЩИК к ДОКУМЕНТ ВНЕШНИЙ. ПОСТАВЛЯЕТ-ПОЛУЧАЕТ_ ВНУТРЕННИЙ: отображение 1:М от ПОДРАЗДЕЛЕНИЕ к ДОКУМЕНТ ВНУТРЕННИЙ СОСТАВ ДОКУМЕНТОВ ВНЕШНИХ: связь трех сущностей МАТЕРИАЛ, ДОКУМЕНТ ВНЕШНИЙ, СКЛАД с дополнительными описательными атрибутами КОЛИЧЕСТВО МАТЕРИАЛА, ЦЕНА МАТЕРИАЛА. СОСТАВ ДОКУМЕНТОВ ВНУТРЕННИХ: связь трех сущностей МАТЕРИАЛ, ДОКУМЕНТ ВНУТРЕННИЙ, СКЛАД с дополнительными описательными атрибутами КОЛИЧЕСТВО МАТЕРИАЛА, ЦЕНА МАТЕРИАЛА. ХРАНИТСЯ_НА_СКЛАДЕ: отображение М:N от МАТЕРИАЛ к СКЛАД с дополнительными описательными атрибутами ХРАНИМОЕ КОЛИЧЕСТВО, КОЛИЧЕСТВО НА НАЧАЛО НАХОДИТСЯ В ГРУППЕ: отображение 1:М от Группы к МАТЕРИАЛУ НАХОДИТСЯ НА СЧЕТЕ: отображение 1:М от СЧЕТА УЧЕТА к. МАТЕРИАЛУ Спецификация атрибутов: КОД_…(все): цифровой. АДРЕС_ПОСТАВЩИКА: алфавитно-цифровой, 50 символов. НАЗВАНИЕ ПОСТАВЩИКА алфавитно-цифровой, 30 символов. ЦЕНА УЧЕТНАЯ: числовой, от 000000.00 до 999999.99. НАЗВАНИЕ ГРУППЫ: алфавитный, 50 символов. НАЗВАНИЕ СЧЕТА: алфавитный, 50 символов. БУХГАЛТЕРСКИЙ НОМЕР: алфавитный, 5 символов. НАЗВАНИЕ СКЛАДА: алфавитный, 50 символов. НАЗВАНИЕ ПОДРАЗДЕЛЕНИЯ: алфавитный, 50 символов. НАЧАЛЬНИК: алфавитный, 50 символов. ДАТА_ДОКУМЕНТА: даты. НОМЕР_ ДОКУМЕНТА: алфавитно-цифровой, 10 символов. КОЛИЧЕСТВО МАТЕРИАЛА: числовой, от 000000.00 до 999999.99. ЦЕНА МАТЕРИАЛА: числовой, от 000000.00 до 999999.99. ХРАНИМОЕ КОЛИЧЕСТВО: числовой, от 000000.00 до 999999.99. КОЛИЧЕСТВО НА НАЧАЛО: числовой, от 000000.00 до 999999.99.
рис. 5.6. Модель «сущность-связь» системы СКЛАД
Логическое проектирование БД
Студент должен знать: · место, цели и задачи этапа логического проектирования; · основные методы создания схем и подсхем; уметь: · создавать логическую модель БД; · проектировать схемы и подсхемы; · оценивать полученные варианты моделей.
План
1. Общая схема логического проектирования баз данных. 2. Методы логического проектирования 3. Пример логического проектирования.
Дата добавления: 2014-01-07; Просмотров: 827; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |