Пятница, 29.03.2024, 15:30
Вы вошли как Гость | Группа "Не зарегистрированный"Приветствую Вас Гость | RSS
Главная | Каталог статей | Мой профиль | Регистрация | Выход | Вход
QO.DO.AM
 >>>мир предметника 050202

Форма входа

Основное меню

Меню 050202

Учительская OnLine

Категории раздела
8 класс-теория [49]
Теоретический материал по Информатики и ИКТ
9 класс [40]
10 класс [34]
11 класс [37]
Лабораторный практикум [23]
Из математической логики
Алексеев Е.Г., Богатырев С.Д. [97]
Алексеев Е.Г., Богатырев С.Д. Информатика. Мультимедийный электронный учебник, содержит: теорию по Информатике и ИКТ, закрепляющие тесты, иллюстративные материалы для урока Информатики и ИКТ
ИНФОРМАТИКА И ИКТ "Учебное пособие" [17]
Содержательный материал по Информатике и ИКТ. Преподается краткое и отборочное содержание для подготовки и проведения уроков Информатики и ИКТ 8-9 классы, 10-11 классы
Технические средства информатизации [31]
Данное учебное пособие предназначено для изучения дисциплины «Технические средства информатизации» в средних специальных учебных заведениях на специальности 2203- «Программное обеспечение вычислительной техники и автоматизированных систем».
Материалы к урокам ИНФОРМАТИКИ И ИКТ для учащихся с 8-11 классы [57]
Переработанный материал по Информатике и ИКТ, блок схемы, выделение основных понятий информатики красочно и кратко, автор разработок Давыдова Елена Владимировна

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
// Your SEO optimized title page contents

Счетчики

Главная » Архив Информатики и ИКТ » Теория » 10 класс [ Добавить статью ]

Реляционные базы данных
Реляционные базы данных

Однотабличные и многотабличные базы данных

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

Поясним это на примере. Пусть табличная база данных "Комплектующие компьютера и поставщики" содержит информацию о различных комплектующих и имеет поля: "Счетчик", "Наименование", "Описание", "Название фирмы", "Адрес", "Цена" (в рублях) - табл. 3.2.

Таблица 3.2. Комплектующие компьютера и поставщики
СчетчикНаименованиеОписаниеНазвание фирмыАдресЦена
1Системный блокPentiumФирма 1Адрес 110000
2Системный блокPentiumФирма 2Адрес 29000
3Монитор15"Фирма 1Адрес 15000
4Монитор15"Фирма 2Адрес 26000
5Клавиатура104 кл.Фирма 1Адрес 1250
6Клавиатура104 кл.Фирма 2Адрес 2300
7МышьЗкнФирма 1Адрес 1100
8Мышь3 кнФирма 2Адрес 2150

Мы видим, что почти половину объема таблицы составляет избыточная, дублированная информация.

Проанализируем причину дублирования. Комплектующие компьютера имеют два неотъемлемых свойства: "Наименование" и "Описание". "Название фирмы", "Адрес" и "Цена" не являются свойствами комплектующих компьютера, они являются свойствами поставщика.

Естественно разделить исходную таблицу на две: "Комплектующие" (табл. 3.3) и "Поставщики" (табл. 3.4).

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

Таблица 3.3. Комплектующие
Код комплектующихНаименованиеОписание
К1Системный блокPentium
К2Монитор15"
КЗКлавиатура104 кл.
К4МышьЗкн.

В таблицу "Поставщики" введем дополнительное поле "Код поставщика". Именно это поле будет ключевым в данной таблице.

Таблица 3.4. Поставщики
Код поставщикаНазвание фирмыАдрес
П1Фирма1Адрес 1
П2Фирма2Адрес2

Связывание таблиц

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

При связи "один-ко-многим" каждой записи в одной (главной) таблице могут соответствовать несколько записей в другой (подчиненной) таблице, а запись в подчиненной таблице не может иметь более одной соответствующей ей записи в главной таблице.

Если одной записи в первой таблице могут соответствовать несколько записей во второй таблице и, наоборот, одной записи во второй таблице - несколько записей в первой таблице, то реализуется связь "многие-ко-многим".

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

Две таблицы, находящиеся в отношении "многие-ко-многим", могут быть связаны только с помощью третьей (связующей) таблицы. Таблицы "Комплектующие" и "Поставщики" можно связать в отношении "многие-ко-многим" путем создания двух связей "один-ко-многим" по отношению к таблице "Цена".

Таблицы "Комплектующие" и "Поставщики" будут являться главными по отношению к таблице "Цена".

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

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

Таблица "Поставщики" также является главной по отношению к таблице "Цена". Ее поле "Код поставщика" является первичным ключом, соответственно в подчиненной таблице "Цена" должно существовать одноименное поле, которое является внешним ключом.

Таким образом, таблица "Цена" должна содержать следующие поля (табл. 3.5):

  • "Счетчик" (ключевое поле);
  • "Код комплектующих" (поле внешнего ключа для таблицы "Комплектующие");
  • "Код поставщика" (поле внешнего ключа для таблицы "Поставщики");
  • "Цена" (числовое поле).

Таблица 3.5. Цена
Код комплектующихКод комплектующихКод поставщикаЦена
1К1П19000
2К1П210000
3К2П15000
4К2П26000
5КЗП1250
6КЗП2300
7К4П1100
8К4П2150

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

Базы данных, состоящие из связанных двумерных таблиц, принято называть реляционными.

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

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



Вопросы для размышления

1. Почему в некоторых случаях целесообразно использовать много табличные, а не одно табличные базы данных?

2. Какие типы связей между таблицами возможны в реляционных базах данных?

Практические задания

3.9. Разработать проект реляционной базы данных "Коллекция аудио записей , которая бы содержала главную таблицу "Список аудио-CD" и подчиненную таблицу "Содержание аудио-CD".


Категория: 10 класс | Добавил: metalworker (21.02.2013)
Просмотров: 2424
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]


qo.do.am © 2024