- •Базы данных Основная терминология
- •Дополнения к определениям
- •Пользователи
- •Основы проектирования бд Терминология
- •Модели бд Простая двумерная структура
- •Иерархическая структура
- •Реляционная модель данных
- •708 Тульский механический завод.
- •Главный ключ таблицы
- •Проблемы реляционного подхода Общие правила проектирования бд
- •Задача нормализации
- •Повторяющиеся группы
- •Нормальные формы
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Даталогическая модель базы данных
- •Одноимённые (общие) поля в связанных таблицах
- •Поиск информации. Индексные файлы
- •Проблемы достоверности информации
- •Оперативные таблицы и справочники
- •Функции универсальной информационной системы
- •Основные функции ис
- •Вспомогательные функции ис
- •Документальные системы
- •Обзор субд
Реляционная модель данных
Доказано, что любую структуру данных можно преобразовать в структуру двумерной таблицы. Цель такого преобразования- получение стандартной структуры наиболее пригодной для компьютерной обработки и для проектирования человеком.
Термин реляционнаяявляется кратким синонимом словосочетания «простые двумерные таблицы».
Основная идея реляционного подхода состоит в том, чтобы представить произвольную структуру данных в виде простой двумерной таблицы (нормализовать структуру).
Например, для иерархической структуры нормализация- это переход от корня дерева до каждого листочка и укладывание таких путей в строки таблицы.
Существуют математические теории, описывающие свойства реляционной модели. Там введены такие термины как предикаты, отношение, домен, кортеж и т.д., однако сфера их использования - развитие математических основ. В практике достаточно более простых терминов.
В реляционных БД совокупности данных представляются в виде двумерных таблиц (подобных описанному выше примеру).
Каждая таблица состоит из фиксированного числа столбцов (доменов). Количество строк - переменное число.
Каждый столбец представляет конкретное данное (код фирмы, код продукции и т.д.). На языке БД столбцы часто называются полями (естественно при этом рассматривать одну запись- строку). Для каждого поля разработчик должен определить:
уникальное имя поля;
тип поля;
длину поля.
Например, поле «Себест» может иметь тип «Числовое» и длину 7 (4 знака до точки и 2 знака после точки).
«Поле»- это наиболее распространенный термин, заменяющий слово «данное».
Каждая строка таблицы на языке БД называется записью. Записи нумеруются по порядку 1, 2, …., n, гдеn- число на данный момент. Добавление записей- нормальная рабочая операция. Добавление полей - реорганизация БД – сфера действийсистемного программиста.
Каждое поле может входить в несколько таблиц, например «Катег.»
Рассмотрим еще пару типичных примеров.
Пример 1. Учет заказов на продукцию завода.
ZAKAZ
Ном_зак - номер заказа.
Код_заказч - код заказчика.
Банк_рек - банковские реквизиты заказчика.
Код_прод - код продукции.
Объем - объем заказа в кг.
Дат_исп - дата исполнения заказа (ДД / ММ / ГГ).
Цена - цена продукции (руб/кг).
Пример 2.
KADR
ФИО
Год_рожд
Образов
Должность
Оклад
Рассматривая эти таблицы, замечаем, что в них используется код, а не прямо имя завода заказчика. В связи с этим возникает вопрос - почему используется код, хотя компьютер может обрабатывать и символы? Первый очевидный ответ - из экономии. Но есть и более важный аспект - проблема одинаковости ввода. Например, название «Тульский механический завод» могут разные люди вводить как Тульск. мех. завод, Тульск. мех. з-д и т.п. Проблема решается также как и в примере с телефонным справочником - КАТЕГ, то есть в базу вводят словарь, в котором для этого конкретного случая будет строка, например:
708 Тульский механический завод.
Если словарьуже существует, то значения уже не вводятся оператором, а выбираются из списка путем их выделения или набора первых нескольких букв. Если нужно пополнить словарь (появился новый заказчик), то тогда ему дают новыйуникальный коди само наименование. Уникальность кода здесь очевидна (иначе - некорректно выбирать). Количество разрядов кода зависит от диапазона значений данного.
Каковы рекомендации по кодированию? Способ генерирования кодов придумывает разработчик БД в тех случаях, когда на данный вид информации не существует государственного классификатора.