Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OAP_VOpros_6-7_Bazy_dannykh_1_lektsia_lab_1.doc
Скачиваний:
23
Добавлен:
30.04.2015
Размер:
3.33 Mб
Скачать

Таблицы бд и связи между ними

Единицей хранящейся в БД информации является таблица. Каждая таблица пред­ставляет собой совокупность строк и столбцов, где строки соответствуют экземп­ляру объекта, конкретному событию или явлению, а столбцы — атрибутам (признакам, характеристикам, параметрам) этого объекта, события, явления. Пример таблицы, в которой содержатся сведения о продаже книг со склада. В терми­нах БД столбцы таблицы называются полями, а ее строки — записями.

Дата Название книги

Покупатель

Отпущено

10.12.99 Borland С++ Builder 4

10.12.99 Delphi 5. Учебный курс

12.12.99 В сетях Всемирной паутины

Магазин № 1

Магазин № 1

Дом книги

100

100

2000

Между отдельными таблицами БД могут существовать связи. Например, инфор­мация о покупателе в предыдущей таблице может дополняться в другой таблице.

Покупатель

Адрес

Телефон

Магазин № 1 107005, Москва, 2-я Бауманская ул., 12

Дом книги 105066, Москва, Измайловский б-р, 18/11

273-00-14

165-18-99

Базы данных, между отдельными таблицами которых существуют связи, называ­ются реляционными (от relation — связь, отношение).

Связанные отношениями таблицы взаимодействуют по принципу главная {master) детальная (detail)*. В нашем примере таблица отпуска товаров — главная, а табли­ца покупателей — детальная. Главную таблицу часто называют родительской, а де­тальную — дочерней. Одна и та же таблица может быть главной по отношению к од­ной таблице БД и дочерней по отношению к другой.

Связи между таблицами базы данных

В БД существуют три типа отношений между различными множествами объектов :

  • один к одному,

  • один ко многим,

  • многие ко многим.

Отношение «один к одному» означает, что между множествами существует однозначное соответствие. Например, такое отношение можно наблюдать между множеством автомобилей и множеством номерных знаков. Отношение «один к одному» не вызывает избыточности, поэтому связанные таким отношением множества целесообразно объединять в одну таблицу.

Отношение «один ко многим» рассмотрено в приведенном примере. Здесь один покупатель может сделать несколько заказов, но у одного заказа существует лишь один покупатель. Отношение «один ко многим» вызывает избыточность информации. Она устраняется организацией отдельной таблицы для каждого множества объектов (Таблица Покупателей и Таблица Заказов).

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