Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ans.doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
663.04 Кб
Скачать
  1. Модель данных сущность-связь: Диаграммные и предикатные представления.

Диаграмма – прямоугольники, ромбы и овалы.

Предикаты - множество сущностей описывается предикатом, аргументы которого соответствуют атрибутам сущностей. Множество связей описывается предикатом, аргументы которого представляют атрибуты связи и ключи связываемых сущностей. Ограничения целостности описываются дополнительными предикатами (как?). Естественным образом получаются оу, осц, од и оов, но непонятно, как делать кратность связи (понятно, что внутренность предиката не важна, важен только набор аргументов). Предикатное представление полезно для автоматической обработки больших схем. Эквивалентно диаграммному представлению.

Пример: Producer(name, address, group), Consumer(name, address, account), Product(model), Feature(name), Has(product, feature, value), Buys(consumer, product), Makes(producer, product).

  1. Реляционная модель данных: отношения, таблицы, домены, атрибуты. Описание таблиц и представлений в языке sql.

Эффективные реализации SQL: 1990. Реляционная модель никогда не была реализована в промышленных системах.

Домены: множества, элементы которых рассматриваются как скалярные значения.

Отношения: предикаты, заданные на прямом произведении (не обязательно разных) доменов. Неформально отношения — прямоугольные таблицы с атомарными элементами.

Заменив предикат на множество, являющееся прообразом значения TRUE, записываем это множество в виде перечисления и получаем таблицу. Её колонки соответствуют атрибутам, строки - экземплярам т.е. кортежам (атрибуты: аргументы отношений, кортежи: элементы области определения отношения). Позиционные или именованные атрибуты?

Домены D1, D2,…, атрибуты A1, A2, …, A, B, C. Кортежи t = <a1, a2,…,an> , ai ∈ Ai. Формально R : D1 х D2 .. Dn → {0,1} или R ⊂ D1 х D2 .. Dn. Отношения являются множествами, поэтому все элементы (кортежи) различны. Rlessthan = D1 = D2 = {1, 2, 3, 4} {< 1, 2 >, < 1, 3 >, < 1, 4 >, < 2 , 3 >, < 3, 4 >}

Пример: Сотрудник(имя, отдел, начальник, дата_рожд, дата_начала_работы)

Множество истинности: {(Анна, 11. Юрий, 1980, 1999), (Виктор, 11, Юрий, 1970, 2003), (Георгий,15, Ирина, 1960, 2005), (Дмитрий, 12, Марина, 1970,2003)}

Отношения соответствуют таблицам, атрибуты – колонкам, кортежи – строкам.

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

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

Третье отличие реляционной модели от практической реализации, которое медленно уходит в прошлое, заключается в том, что в реляционной модели домен — это набор возможных значений определённого типа. Помимо прочего данное определение означает, что значения из разных доменов нельзя сравнивать между собой (например, невозможно сравнить вес с объёмом). В практических системах тоже используются типы, но они более абстрактны (числа, строки, даты и т.д.), при этом мы можем сравнить любое число с любым.

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

[ По Молине утверждение о том, что порядок атрибутов неважен, не совсем верно. Там говорится, что мы вольны менять его как нам заблагорассудится, однако, для удобства в любой момент времени мы этот порядок фиксируем, таким образом, получая возможность представлять данные как набор кортежей ] (стр 88)

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

Материализо́ванное представле́ние — физический объект базы данных, содержащий результат выполнения запроса.

Табличная модель данных SQL: в быту называется реляционной, понятие домена не существует, атрибуты -> колонки, отношения -> таблицы, кортежи -> строки, не требуется уникальность строк, операции отличаются от реляционных. (чем?) Например, нет деления

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]