Помощь в написании студенческих работ
Антистрессовый сервис

Нормализация отношений. 
Процесс проектирования и набор функций языка FoxPro 2.0

РефератПомощь в написанииУзнать стоимостьмоей работы

Как уже говорилось выше, в реляционной модели данных есть возможность определения одного атрибута или их множества в качестве ключа отношения. Это свойство позволяет формировать запросы к базе данных очень компактно с использованием терминов реляционной алгебры и реляционного счисления, что делает реляционную модель очень простой для разработчика прикладного программного обеспечения. Сначала эти… Читать ещё >

Нормализация отношений. Процесс проектирования и набор функций языка FoxPro 2.0 (реферат, курсовая, диплом, контрольная)

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

Сначала эти вопросы решались интуитивно. Однако интуиция может подвести даже опытного специалиста, поэтому Коддом был разработан в рамках реляционной модели данных аппарат, называемый нормализацией отношений. И хотя идеи нормализации сформулированы в терминологии реляционной модели данных, они в равной степени применимы и для других моделей данных.

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

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

Первая нормальная форма. Отношение называется нормализованным или приведенным к первой нормальной форме (1НФ), если все его атрибуты простые.

Ненормализованное отношение легко сделать нормализованным. Такое преобразование может привести к увеличению мощности отношения и изменению ключа.

Функциональная зависимость. Пусть Х и Y — два атрибута некоторого отношения, Говорят, что Y функционально зависит от X, если в любой момент времени каждому значению Х соответствует не более чем одно значение атрибута Y. Функциональную зависимость можно обозначить так: Х>Y.

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

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

Чтобы отношение привести ко второй нормальной форме, необходимо:

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

Транзитивная зависимость. Пусть X, Y, Z — три атрибута некоторого отношения. При этом Х>Y и Y>Z, но обратное соответствие отсутствует, т. е. Z не> или Y не>Х. Тогда говорят, что Z транзитивно зависит от X.

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

Основное достоинство реляционного подхода — его простота и доступность. Пользователи абстрагированы от физической структуры памяти. Это позволяет эксплуатировать БД без знания методов и способов ее построения. Основные достоинства РМД следующие: простота, независимость данных; гибкость; непроцедурные запросы, теоретическое обоснование на основе теории отношений. Это дает возможность пользователям формировать их запросы более компактно, в терминах более крупных агрегатов.

Большинство СУБД для персональных ЭВМ составляют системы, поддерживающие реляционную модель данных. К этому классу следует отнести самую распространенную на ПЭВМ систему dBase фирмы Ashton-Tate Corp.(версии dBaseП, dBaseШ, dBaseШ PLUS, dBaseIV) и многочисленное семейство совметимых с нею программных продуктов — FoxBase+ и FoxPro фирмы Fox Software, Clipper'87 фирмы Nantucket Corp., QuickSilver и dBXL фирмы Wordtech, User Interfase фирмы WallSoft Systems Inc., dBFast фирмы dBFast Inc. Широко распространены также реляционные системы Oracle фирмы Oracle Corp., Paradox фирмы Borland International, ряд версий системы R: base 4000, R: base 5000, R: base System V, R: base for DOS, R: base 3.0)фирмы Microrim, система DB2 фирмы IBM Corp.

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

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

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

Из всего многообразия реляционных СУБД, представленных на рынке в настоящее время (DBASE IV, Clipper IV, V и т. д.) сразу можно выделить СУБД FoxPro 2.0 фирмы FoxSoftware Inc СУБД FoxPro II включает в себя все лучшие функциональные возможности СУБД FoxBase+ версии 2.11. Вместе с тем она обладает лучшими возможностями по сравнению с DBASE IV по производительности. Требования к ресурсам памяти на стадии выполнения значительно снижены.

FoxPro 2.0 имеет графический многооконный интерфейс с поддержкой манипулятора «мышь» и клавиатуры. Он реализует элементы объектно-ориентированного подхода, при этом за различными окнами одновременно открытыми окнами могут быть закреплены различные процедуры (например: генерация отчета, просмотр файла и т. д.). Развитый генератор отчетов позволяет формировать отчеты не только табличной, но и ленточной формы.

Язык программирования полностью включат язык СУБД DBASE IV. Дополнительно в него включено более 140 различных расширений. При этом сохранена полная программная совместимость с младшими версиями системы. foxpro проектирование система пользователь СУБД FoxPro 2.0 обладает возможностями поддержки разработки и отладки программ, средствами отслеживания изменений исходных текстов программных модулей с их автоматической перекомпиляцией. Предусмотрены специальные окна для отладчика программ, работающего в терминах исходного текста. Окно трассировки позволяет анализировать логику выполнения программы. Эта информация мож использоваться и при работе в пошаговом режиме. Отдельное окно предусмотрено для просмотра значений переменных по ходу выполнения программы.

Система позволяет использовать средства разработки прикладных программ, имеющиеся в составе ее предшественницы, такие как генератор экранных форм ввода-вывода FoxView и генератор программ на основе этих экранных форм FoxCode с его языком шаблонов.

FoxPro 2.0 включает расширенную интегрированную среду разработчика, в состав которой входят конструктор меню (Menu Builder), экранный редактор для создания форм ввода-вывода (Screen Painter), средства поддержки языка шаблонов и утилита поддержки прикладного программного обеспечения (Make). Эта среда позволяет значительно сократить сроки создания программ.

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

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

Большой интерес представляет системный табличный интерфейс для конечных пользователей, основанный на широко распространенном реляционном языке QBE (Query-By-Example), получившем здесь название RQBE. Драйверы RQBE предоставляют пользователям доступ к базам данных, управляемых как системой FoxPro, так и различными SQLсерверами в локальных сетях пЭВМ.

Из всего вышеизложенного можно сделать вывод что СУБД FoxPro 2.0 является наиболее приемлемым средством для программной реализации ИИСОД. Как следствие, разрабатываемую в рамках данного дипломного проекта подсистему «Контроль исполнения» следует реализовать с применением системы FoxPro 2.0.

Показать весь текст
Заполнить форму текущей работой