Проектирование базы данных

Автор работы: Пользователь скрыл имя, 02 Декабря 2013 в 13:40, реферат

Краткое описание

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

Содержание

1. Описание предметной области
2. Проектирование базы данных
2.1. Объекты предметной области
2.2. Построение ER – модели
2.3. Реляционная модель
3. Проектирование информационной системы
3.1. Функции информационной системы
3.2. Архитектура информационной системы
4. Реализация информационной системы
4.1. Средства реализации
Литература

Прикрепленные файлы: 1 файл

prodazha_kosmetiki.docx

— 45.08 Кб (Скачать документ)

 

Таблица 1.3. Отношение Заказ – таблица Zakaz

Атрибут

Комментарий

nomer

Номер заказа

n_consul

Номер консультанта – сост. ключ

n_client

Номер клиента – сост. Ключ

n_tov

Номер товара

kolvo

Количество

date

Дата заказа


 

Таблица 1.4 Отношение Товар – таблица Tovar

Атрибут

Комментарий

n_tov

Номер товара – ключевой атрибут

nazv

Наименование товара

d_vip

Дата выпуска

d_god

Срок годности

srok

Срок использования

pr_opt

Оптовая цена

pr_rozn

Розничная цена

sklad

Количество на складе


Реляционная схема  БД с выделенными ключевыми атрибутами может быть представлена в следующем  виде:

Consul (n_consul, fio)

Client (n_cl, fio_cl, n_consul)

Zakaz (nomer, n_consul, n_client, n_tov, kolvo, date)

Tovar (n_tov, nazv, d_vip, d_god, srok, pr_opt, pr_rozn, sklad)

Введем понятие  домена. Домен – это множество значений, из которого извлекаются фактические значения, появляющиеся в данном столбце. Следует отметить, что значения атрибутов, являющихся ключами отношений, извлекаются из множества натуральных чисел. Значения атрибутов fio, fio_cl и т.д. – из множества символьных данных, значения атрибута date извлекаются из множества дат.

        1. Функции информационной системы

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

Для объекта Клиент вводятся операции:

    • показать список всех клиентов;
    • показать список клиентов определенного консультанта;
    • добавить нового клиента;

 Для объекта Консультант вводятся операции:

    • показать список всех консультантов;
    • добавить нового консультанта;

Для объекта Товар вводятся операции:

    • показать список всех товаров;
    • добавить новый товар;

Для объекта Заказ вводятся операции:

    • показать список всех заказов;
    • создать новый заказ;

Операция, связанная  с удалением данных в объектах, не является типичной для выбранной предметной области.

Для имеющихся  данных могут быть сформулированы следующие  операции (запросы):

    • показать товары на складе;
    • показать товары у консультантов;
    • показать денежный баланс консультанта;
    • показать список постоянных клиентов консультанта;
    • показать самого успешного консультанта;
    • показать самый ходовой товар

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

        1. Архитектура информационной системы

Архитектура ИС задачи представлена на рис. 1.3.


 

 

 

 

 

 

 

 

 

Рис. 1.3 Архитектура ИС

 

    1. Реализация информационной системы
      1. Средства реализации

СУБД Visual FoxPro (VFP) для реализации информационной системы (ИС) имеет следующие средства:

– базовые возможности полнофункциональной интегрированной среды программирования Visual FoxPro с использованием объектно-ориентированного программирования;

– визуальные средства, которыми можно воспользоваться из главного меню СУБД Visual FoxPro;

– язык программирования СУБД Visual FOXPRO с полным набором операторов (команд);

– специализированный язык запросов – SQL (Structured Query Language).

 

Основные объекты СУБД Visual FoxPro

В СУБД Visual FoxPro можно выделить следующие основные объекты:

 проект, база данных, таблицы и индексы, хранимые процедуры и триггеры, относящиеся непосредственно к базе данных;

 представления данных (просмотры), запросы, отчеты, формы, программы, меню, классы.

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

База данных (объект Database) состоит из таблиц, индексов, триггеров и хранимых процедур. Каждая таблица имеет имя и хранится в отдельном файле с расширением DBF (data base file – файл базы данных). Каждая таблица может иметь несколько индексов, используемых для упорядочения данных и быстрого поиска данных. Индексы хранятся в файле с тем же именем, что и таблица, но с расширением CDX – составной индексный файл (мультииндексный файл), хранящий сразу несколько индексных выражений.

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

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

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

Формы (объект Form) используются для просмотра и ввода данных в таблицы, отображения их на экране или управления работой приложения (ИС). Данные можно вводить в таблицы и непосредственно, без применения форм. Для создания формы используются мастер форм и конструктор форм. Мастер форм предоставляет ряд шаблонов, которыми можно воспользоваться. Конструктор форм предназначен для создания сложных форм.

Формы как объекты  предоставляют разработчику множество  свойств, событий и методов, которые позволяют управлять внешним видом окна и на созданном окне размещать различные элементы управления. Объект Form является контейнером, в который помещаются другие объекты. Это позволяет расширить собственную функциональность, а также позволяет организовать интерактивный диалог с пользователем.

Отчет (объект Report) – это форматированное представление данных, выводимое на экран, в файл или на печать. Поддерживается вывод отчетов в разных форматах, в число которых входят XML, HTML. Для создания отчетов, как и для форм, используются мастер форм и конструктор форм.

Запросы являются средством выборки данных из одной или нескольких таблиц. Для реализации запроса используются следующие средства: специализированный язык запросов – SQL (Structured Query Language), конструктор запросов и программа на алгоритмическом языке Visual FoxPro. Результаты выполнения запроса могут выводиться в виде отчета, отображаться в форме или сохраняться в указанной таблице.

Программы, написанные на алгоритмическом языке Visual FoxPro, являются объектно-ориентированными. С помощью программ обрабатываются события в форме, создаются объекты, осуществляются вычисления, происходит управление базой данных. Можно объединять программы в библиотеки. Для создания форм используются как базовые классы, так и собственные пользовательские классы. Классы, созданные в VFP, хранятся в библиотеках классов.

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

Для создания объектов и работы с  ними в Visual FoxPro существуют специальные средства – конструкторы (Designers) и мастера (Wizards). Они предоставляют удобные возможности, позволяющие создавать нужные объекты информационных систем (приложений).

Основные  конструкторы (Designers)

Конструктор Базы Данных (Database Designer)

Конструктор базы данных предоставляет средства для создания объекта БД (Database). С его помощью можно создавать, добавлять, удалять таблицы, связывать их так называемыми «постоянными связями» (которые очень наглядно отображаются), определять правила ссылочной целостности, создавать хранимые процедуры, триггеры.

Конструктор таблиц (Table Designer)

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

Конструктор запросов (Query Designer)

Конструктор запросов позволяет визуальными средствами создавать запросы к БД на языке SQL.

Конструктор представлений (View Designer)

Конструктор предназначен для создания представлений – SQL-запросов, хранящихся в БД. Представления позволяют редактировать данные.

   Конструктор форм (Form Designer)

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

Конструктор отчетов (Report Designer)

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

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

Управление  проектом

Основой любого приложения в VFP является проект (Project). Проект – средство объединения элементов приложения в единое целое. Проект играет роль каталога, который содержит все, что касается реализации данной задачи. Для управления проектом существует Менеджер Проектов (Project Manager).

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

  • Data (Данные) – БД, таблицы, представления, запросы.
  • Documents (Документы) – формы, отчеты.
  • Classes (Классы).
  • Code (Код) – программы.
  • Other (Остальное) – меню, файлы переменных, макрокоманды.

Менеджер Проектов выполнен в виде многостраничного блокнота, на каждой странице которого представлены указанные  элементы.

Менеджер Проектов является центром  управления всеми элементами, входящими  в приложение.

Каждый элемент может быть представлен  в одном из двух состояний: закрытом (признак «+») или открытом (признак  «–»).

Файлы в проекте  классифицируются по видам. Каждый элемент  проекта отображает свои файлы.

Элемент All отображает все файлы.

Элемент Data (данные) отображает базу данных (файлы с расширением DBC, DCT, DCX), таблицы, представления, запросы (файлы с расширением DBF, FPT,CDX), хранимые процедуры.

Элемент Documents (документы) – формы (файлы с расширением SCX, SCT) , отчеты (файлы с расширением FRT, FRX) .

Элемент Classes (классы) – файлы библиотек классов. Если раскрыть библиотеку, то будет показан список входящих в нее классов.

Элемент Code (код) – программы (файлы с расширением PRG, FXP) .

Элемент Other (остальное) – меню (файлы с расширением MNT, MNX, MPR, MPX), файлы переменных, макрокоманды.

ЛИТЕРАТУРА
  1. Карпова Т.С. Базы данных: модели, разработка, реализация. – СПб.: ПИТЕР, 2002.
  2. Клепнин В.Б., Агафонова Т.П.Visual FoxPro 9.0. – СПб: БХВ-Петербург, 2007.
  3. Попов А.А. Программирование в среде СУБД FoxPro 2.0. Построение систем обработки данных. – М.: Радио и связь, 1993.
  4. Амелина Н.И., Мачулина Л.А. Методические указания по курсовому проектированию по курсу «Базы данных» для студентов механико-математического факультета вечернего и дневного отделения. – Ростов-на-Дону, УПЛ РГУ, 1999.
  5. Невская Е.С., Амелина Н.И., Мачулина Л.А. Введение в системы баз данных Методические указания для студентов вечернего и дневного отделения механико-математического факультета. – Ростов-на-Дону, УПЛ РГУ, 2003.
  6. Невская Е.С. Базы данных. Часть 1. Методические указания для 
    студентов 3 и 4 курсов механико-математического факультета. – Ростов-на-Дону, УПЛ РГУ, 1996.
  7. Невская Е.С. Базы данных. Часть 2. Методические указания для  
    студентов 3 и 4 курсов механико-математического факультета. – Ростов-на-Дону, УПЛ РГУ, 1997.

Информация о работе Проектирование базы данных