
- •Информационные системы
- •Банк данных и его компоненты
- •Модели представления данных
- •Индексирование
- •Реляционные языки и обработки реляционных таблиц
- •Виды связей между отношениями
- •Классификация программ в субд
- •Проектирование и нормализация бд
- •Управление транзакциями
- •Элементы языка sql
- •Выборка данных с использованием предложения select
- •InterBase
- •Индексы
Виды связей между отношениями
В зависимости от того как определены поля связи между родительской и дочерней таблицей, выделяют 4 вида связи:
Один к одному (1:1)– означает, что одной записи из первой таблицы соответствует только одна запись из второй таблицы (между первичными ключами);
Один ко многим (1:М) – одной записи из первой таблицы соответствует одна или несколько записей из другой таблицы (между первичным и внешним ключом, между первичным и первичным составным);
Многие к одному (М:1) –зеркальное отображение связи 1:М;
Многие ко многим (М:М) – возможно в случаях, когда обязательно выполняются следующие два условия:
- одной записи из первой таблице соответствует одна или несколько записей из другой таблицы;
- одной записи второй таблицы соответствует одна или несколько записей из первой таблицы.
Классификация программ в субд
В общем случае под СУБД можно понимать любой программный продукт, поддерживающий процессы создания, ведения и использования базы данных. В общем случае БД делятся на следующие виды программ:
1. Полнофункциональные СУБД– обычно имеют развитый интерфейс, позволяющий с помощью команд меню выполнять основные действия с БД (создание, ведение, модификация структур таблиц, ввод данных, формирование запросов, разработка отчетов, вывод отчетов на печать). Многие полнофункциональные СУБД включают в себя средства программирования для профессиональных разработчиков.//Access, FoxPro, Paradox, DBase
2. Серверы БД– предназначены для организации центров обработки информации в сетях ЭВМ. Реализуют функции управления БД, запрашиваемых другими пользователями обычно с помощьюSQL-запроса.//SQL-Server, InterBase
3. Клиенты БД– могут использоваться различные программы, например, полнофункциональные СУБД.
4. Средства разработки программ работы с БД– могут использоваться для создания разновидностей следующих программ: клиентских программ, серверов БД, отдельных компонентов пользовательских приложений.//системы программирования, разнообразные библиотеки программ для различных языков программирования, пакеты автоматизации разработок.
По характеру использования СУБД делятся на:
1. Персональные СУБД– обеспечивают возможность создания персональных БД и недорогих приложений, работающих с ними. Они выступают в роли клиентской части многопользовательских СУБД.
2. Многопользовательские СУБД– включают в себя сервер БД и клиентскую часть. Как правило, они могут работать в неоднородной ВС (с разными типами ЭВМ и ОС).
Проектирование и нормализация бд
При проектировании реляционных БД необходимо решить вопрос о наиболее эффективной структуре данных.
Цели, которые при этом преследуются:
Исключить ненужные повторения, которые могут являться причиной ошибок при вводе, и нерациональное использование дискового пространства.
Обеспечение целостности т.о., чтобы при изменении одного объекта происходило автоматическое изменение связанных с ним объектов.
Обеспечение быстрого доступа к данным в таблице.
Нормализация - процесс уменьшения избыточности информации в БД.
Теория нормализации оперирует пятью нормальными формами. Эти формы предназначены для уменьшения избыточной информации от первой до пятой нормальной формы. Поэтому каждая нормальная форма удовлетворяет требованиям предыдущей формы и некоторыми своим дополнительным условием. На практике используется три первые нормальные формы чаще всего.
Наша БД будет состоять:
№ п/п |
Наименование атрибута |
1 |
Код_покупателя |
2 |
Предприятие |
3 |
Фамилия |
4 |
Имя |
5 |
Отчество |
6 |
Телефон |
7 |
Индекс |
8 |
Страна |
9 |
Область |
10 |
Город |
11 |
Остальная_часть_адреса |
12 |
Кредит |
13 |
Номер_заказа |
14 |
Дата_заказа |
15 |
Заказанное_количество |
16 |
Дата_продажи |
17 |
Проданное_количество |
18 |
Код_менеджера |
19 |
Имя_менеджера |
20 |
Группа_товара |
21 |
Код_товара |
22 |
Наименование |
23 |
Цена |
24 |
Примечание |
- таблица не должна иметь повторяющихся записей;
- таблица не должна иметь повторяющихся групп полей.






Покупатели |
Код_покупателя |
Предприятие |
Фамилия |
Имя |
Отчество |
Индекс |
Страна |
Область |
Город |
Остальная_часть_адреса |
Кредит |
Заказано |
Номер_заказа |
Код_покупателя |
Дата_заказа |
Дата_продажи |
Код_менеджера |
Имя_менеджера |
Продано |
Номер_заказа |
Код_товара |
Наименование |
Группа_товара |
Цена |
Заказанное_количество |
Проданное_количество |
Примечание |
Телефон |
Код_покупателя |
Телефон |
Отношение во второй нормальной формедолжно удовлетворять следующему условию:
- отношение должно удовлетворять условию первой нормальной формы;
- любое не ключевое поле однозначно идентифицируется полным набором ключевых полей.
Продано |
Номер_заказа |
Код_товара |
Заказанное_количество |
Проданное_количество |
Примечание |
Товар |
Код_товара |
Наименование |
Группа_товара |
Цена |
Отношение в третьей нормальной формедолжно удовлетворять следующему условию:
- отношение должно удовлетворять условию второй нормальной формы;
- любое не ключевое поле не должно однозначно идентифицироваться другим не ключевым полем.
Заказано |
Номер_заказа |
Код_покупателя |
Дата_заказа |
Дата_продажи |
Код_менеджера |
Менеджер |
Код_менеджера |
Имя_менеджера |
J