Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 1.doc
Скачиваний:
7
Добавлен:
20.11.2018
Размер:
105.47 Кб
Скачать
    1. Классификация баз данных по используемой модели данных.

Модель данных (data model) – это совокупность структур данных и операций их обработки.

Структурные элементы базы данных. Понятие сущности (объекта) и атрибута.

База данных – совокупность сведений о некоторых объектах. В теории баз данных описываемые объекты часто называют сущностями (entity), а сами данные, описывающие эти объекты – атрибутами (attribute). Сущностью, например, могут являться ВУЗ, аудитория, студент, ручка, компьютер.

Атрибут – это некоторый показатель, характеризующий объект и принимающий для каждого конкретного объекта определенное значение (текстовое, числовое и т.п.)

Пример: Объект (сущность) – студент. Атрибуты: ФИО, № группы, дата рождения, средний балл и т.д.

Рассмотрим 3 основные модели данных.

Иерархическая модель данных.

Эта модель данных представляет собой совокупность связанных элементов, имеющих иерархическую структуру. Эту модель данных можно представить в виде графа (дерева). Узел – совокупность атрибутов данных, описывающих некоторый объект. Каждый узел связан с одним узлом верхнего уровня и с любым количеством узлов нижнего уровня. Самый верхний узел называется корнем дерева. К каждой записи базы данных существует единственный путь от корневой записи.

Примеры.

  • Адрес: Земля – Страна – Регион (область, республика, штат) – город – улица – дом – квартира.

  • Пространство доменных имен в Интернете – система DNS.

Сетевая модель данных.

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

Пример.

БД с информацией о членстве ученых в научных организациях.

Реляционная модель данных.

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

§1. Требования к реляционной модели данных. Основные понятия.

Датой рождения реляционных баз данных можно считать 6 июня 1970 года, когда сотрудник фирмы IBM, доктор Э. Кодд опубликовал статью «Реляционная модель данных для больших коллективных банков» («A Relational Model of Data for Large Shared Data Banks»).

Для понимания смысла названия модели данных «реляционная» приведем два определения:

Пусть A – некое множество.

Определение 1: Упорядоченный набор вида {а1,…аn}, ai εA называется кортежем.

Определение 2: Произвольное подмножество R множества An всех кортежей называется отношением (n-местное отношение на А).

Суть отношения – двумерная таблица. Отношение (in English) – “relation” - отсюда реляционная модель данных.

Строки таблицы называют записями, столбцы – полями.

Приведем ряд терминов, используемых для описания базовых понятий в классической теории БД и в теории реляционных БД, а также аналогичные термины, применяемые в большинстве современных СУБД, например, в SQL Server.

Терминология баз данных

Теория БД

Реляционные БД

SQL Server 2000

Сущность (Entity)

Отношение (Relation)

Таблица (Table)

Кортеж (Tuple)

Запись (Record)

Строка (Row)

Атрибут (Attribute)

Поле (Field)

Столбец, колонка (Column)

Реляционная модель предъявляет к таблице определенные требования.

  1. Данные в ячейках таблицы должны быть информационно не делимыми. (Принцип информационной неделимости). Каждая ячейка может содержать только одну порцию данных. (Атомарные значения данных).

Примеры:

  • Адрес, город, улица, дом

  • Ф.И.О.

  1. Данные в одном столбце должны быть одного типа.

  2. Каждая строка должна быть уникальной (недопустимо дублирование строк).

  3. Столбцы должны иметь уникальные имена.

  4. Строки должны размещаться в произвольном порядке.

  5. Столбцы должны размещаться в произвольном порядке.

Как уже говорилось, реляционные таблицы связаны друг с другом. Чтобы иметь возможность связать таблицы, необходимо уметь как-то сопоставлять строки в разных таблицах. Для этого любую строку таблицы необходимо уникально идентифицировать. Таким идентификатором является ключ (Key).

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

Пример.

Для объекта студент:

  1. № зачетной книжки.

  2. Фамилия, Имя, отчество, курс, группа – составной ключ (множественный, комбинированный, сложный).

Определение: Множество атрибутов отношения (таблицы) называется возможным ключом тогда и только тогда, когда выполняются 2 условия:

  • Уникальность: никакие 2 кортежа не имеют одинакового значения для всех атрибутов, входящих в возможный ключ (для реляционных таблиц это условие выполняется автоматически).

  • Минимальность: ни один из атрибутов не может быть исключен из ключа без нарушения уникальности.

Замечание

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

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

Пример:

Связь по внешнему ключу

Список студентов

Ведомость по …

зач. Книжки

Фамилия

Имя

Отчество

Группа

№ зач. книжки

Оценка

Правило ссылочной целостности.

Внешний ключ может быть либо пустым (null), либо соответствовать значению первичного ключа, на который он ссылается.