
- •1.Субд FoxPro 2.0. Команды создания, открытия и закрытия бд. Рабочие области.
- •Краткая характеристика foxpro
- •2.Субд FoxPro 2.0.Коменда изменения структуры бд,дополнения и редактирования.
- •3. Команды FoxPro: If и Case.
- •4. Циклы в foxpro while, for, scan
- •5 Структура команд субд FoxPro
- •Команды вывода list и display
- •Команды перемещения по базе данных
- •Функции, связанные с указателем записи
- •Команды удаления данных
- •Команда изменения значения поля бд
- •Ускоренный поиск
- •Приблизительный поиск
- •8.Команда создания новой базы данных.
- •9 Команда sql по дополнению бд
- •Команда sql по дополнению бд
- •10 Команда sql по удалению записей (для Visual FoxPro)
- •Команда sql по удалению записей (для Visual FoxPro)
- •11 Общий вид команды формирования запроса select.
- •Указание результатов выборки и источника данных
- •Указание объекта, куда пересылается выборка:
- •Критерий отбора данных:
- •Группировка данных
- •Сортировка данных
- •12 Нормализация структуры данных.
- •Нормализация данных при реляционном подходе
- •Нормализация структуры данных
- •13 Нормализация отношений.
- •Пример нормализации отношений
- •14 Реляционные операторы.
- •Традиционные операции над множествами. Объединение (union).
- •Пересечение (intersect).
- •Вычитание (minus).
- •Произведение (times).
- •15 Специальные реляционные операторы: выборка, проекция, соединение, деление. Выборка (where)
- •Проекция [ ].
- •Соединение ( join ).
- •Деление (divideby)
- •Примеры реляционных выражений.
13 Нормализация отношений.
Нормализация отношений проводят для исключения аномалий обновления и удаления данных. При аномалии удаления происходит удаление не только не нужной информации, но и удаление достоверной и нужной информации. Например, удаляется заказ от некоторой фирмы. И вместе с заказом удаляются и данные о фирме, что нежелательно. Выход здесь следующий - таблица заказов отдельно, и таблица с информацией о возможных клиентах тоже отдельно.
Следовательно, для исключения аномалий обновления данных необходимо, чтобы схема БД была построена из отношений (таблиц), данные которых были бы независимы. Для решения этой задачи Эдгар Кодд предложил аппарат нормализации отношений.
Нормализация - это процесс проверки и преобразования отношений и атрибутов таким образом, чтобы устранить аномалии хранения данных.
Процесс нормализации сводится к последовательному приведению структуры данных к нормальным формам, каждая из которых представляет собой совокупность формализованных требований к организации данных.
Известно шесть нормальных форм:
1) первая нормальная форма (1NF);
2) вторая нормальная форма (2NF);
3) третья нормальная форма (3NF);
4) нормальная форма Бойса-Кодда (усиленная 3NF, BCNF);
5) четвертая нормальная форма (4NF);
6) пятая нормальная форма (5NF).
Здесь каждая нормальная форма полностью удовлетворяет требованиям предыдущей нормальной форм и выдвигает некоторые дополнительные требования. Требования нормальных форм основаны на понятии функциональной зависимости.
Функциональная зависимость- это такая связь между атрибутами А и В одного и того же отношения, когда каждому значению А соответствует только одно значение В. Атрибут А называется детерминантом. Детерминанты могут быть составными, то есть состоять из нескольких атрибутов.
Существует три вида функциональных зависимостей: полная, частичная и транзитивная.
В полной функциональной зависимости атрибут В зависит от А, но не зависит от подмножества атрибутов детерминанта А.
В частичной функциональной зависимости атрибут В зависит только от части составного детерминанта А.
Транзитивными называют функциональные зависимости, в которых для атрибутов А, В, С выполняются полные зависимости В от А и С от В, но отсутствует обратная зависимость.
Аномалии порождаются частичными и транзитивными функциональными зависимостями. Поэтому нормализация отношений – это преобразование исходного отношения к нескольким отношениям так, что каждое из полученных отношений будет содержать только одну полную функциональную зависимость.
Первая нормальная форма (1NF) требует, чтобы все атрибуты содержали атомарные значения. Например, адрес должен быть расписан по отдельным атрибутам (область, город, улица, дом, квартира). Второе требование - чтобы не было повторяющихся групп (например, двух или более номеров телефонов).
Вторая нормальная форма (2NF): отношение не должно содержать частичных функциональных зависимостей, то есть каждый неключевой атрибут должен зависеть только от всего составного ключа, а не от его частей.
Третья нормальная форма (3NF) требует исключения транзитивных зависимостей. Это означает, что не должно быть зависимостей между неключевыми атрибутами одного отношения.
Нормальная форма Бойса-Кодда (BCNF) требует, чтобы каждый детерминант являлся возможным ключом.
Четвертая нормальная форма требует отсутствия многозначных зависимостей между атрибутами.
Пятая нормальная форма на практике не используется.
Соблюдение требований нормализации зачастую ведет к понижению производительности конкретной информационной системы. После нормализации число отношений возрастает. Поэтому при выполнении запросов к БД требуется больше объединений, поглощающих ресурсы системы.
В целях повышения производительности, при переходе на физический уровень, производится сознательный отход от нормальных форм- денормализация.
Процесс денормализации не имеет четко сформулированных правил, конкретные решения зависят от специфики задачи и предметной области.