Файл: Теоретические вопросы 1 Понятие информационной системы. Составляющие компоненты информационной системы Система.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.11.2023

Просмотров: 82

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Объединение:

Отношение со схемой H и данными B'

B1 ⊆ B', B2 ⊆ B', причём B' содержит все кортежи из отношений R1 или R2.

Пересечение:

Отношение со схемой H и данными B'

B' ⊆ B1, B' ⊆ B2, причём B' содержит все кортежи, присутствующие в отношениях R1 и R2 одновременно

Разность:

Отношение со схемой H и данными B'

B' ⊆ B1, B' ⊄ B2, причём B' содержит все кортежи, присутствующие в отношении R1 и отсутствующие в отношении R2

Симметрическая разность

Отношение со схемой H и данными B'

B' содержит все кортежи, присутствующие либо в отношении R1, либо в отношении R2, но не присутствующие в этих отношениях одновременно

16

Выборка. Виды предикатов. θ-предикат

как бинарное отношение.





17

Проекция. Вычисляемый атрибут.

Агрегация

  • Можно не только отбрасывать атрибуты, но и добавлять новые, вычисляемые

  • Можно вычислять атрибуты с использованием агрегации кортежей в мультимножества

  • Количество вычисляемых атрибутов может быть произвольным



∑ сумма

∏ произведение

x̅ среднее арифметическое

G среднее геометрическое

MIN минимум

MAX максимум

S0 стандартное отклонение

|Am| счётчик



18

Прямое произведение отношений.

Естественное соединение

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



19

Внешнее и внутреннее соединение. Виды

соединений




20

Полусоединение. Деление

Полусоединение (semijoin) – соединение R1 и R2, спроецированное на поля отношения R1. Из R1 вычёркиваются те кортежи, для которых не найдено соответствия в R2



21

Отношение как естественное соединение

таблично заданных функций по аргументам.

Ключ как аргументы соединяемых функций

22

Инъекция, сюръекция, биекция. Обратная

функциональная зависимость. Правила выбора

ключа, если возникла биекция



23

Виды ключей: первичный, потенциальный,

альтернативный, суперключ. Суррогатный ключ

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

  • По приоритету

    • Первичный ключ

    • Потенциальный ключ

    • Суперключ

  • По количеству атрибутов

    • Простой ключ – состоит из одного атрибута

    • Составной ключ – состоит из нескольких атрибутов

24

Внешний ключ. Правила удаления.

Даталогическое моделирование связей

Внешний ключ – это подмножество атрибутов отношения, ссылающееся на один из ключей из другого или того же самого отношения



25

Унарные связи. Идентифицирующие связи

Унарная связь – это связь таблицы с самой собой

Одна и та же таблица выступает как в роли родительской, так и в роли дочерней



26

Целостность данных. Уровни целостности

данных. Примеры






27

Избыточное и неизбыточное

дублирование. Аномалии добавления,

удаления и редактирования



28

Общее понятие о нормальных формах.

1НФ, 2НФ

  • Нормализация таблиц – это приведение таблиц к форме, исключающей избыточное дублирование, аномалии вставки, модификации и удаления.

  • Общий принцип: информация об одном факте должна храниться строго в одном месте базы данных (одна ячейка одной таблицы).

  • Результат нормализации

    • Сложные таблицы разбиваются на более простые

    • Уменьшается размер файла базы данных

    • Улучшается производительность при больших объёмах данных

Исключаются аномалии

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

Отношение находится во 2НФ, если оно находится в 1НФ и каждый не ключевой атрибут неприводимо зависит от Первичного Ключа(ПК).

Неприводимость означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, от которого можно также вывести данную функциональную зависимость.



29

3НФ, НФБК

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



НФБК = 3НФ + Ключевые атрибуты составного ключа не должны зависеть от неключевых атрибутов.





30

4НФ, 5НФ

Начнем с того, что таблица должна иметь как минимум три столбца, допустим A, B и C, при этом B и C между собой никак не связаны и не зависят друг от друга, но по отдельности зависят от A, и для каждого значения A есть множество значений B, а также множество значений C.


В данном случае многозначная зависимость обозначается вот так:

A —> B

A —> C

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



5 НФ

Отношения находятся в 5НФ, если оно находится в 4НФ и отсутствуют сложные зависимые соединения между атрибутами.

Если «Атрибут_1» зависит от «Атрибута_2», а «Атрибут_2» в свою очередь зависит от «Атрибута_3», а «Атрибут_3» зависит от «Атрибута_1», то все три атрибута обязательно входят в один кортеж.



Чтобы выполнить декомпозицию без потерь, нам нужно разбить данную таблицу на три проекции

{Сотрудник, Проект}, {Сотрудник, Направление}, {Проект, Направление}



Прикладные вопросы

1

Стандарт языка и диалекты. Стандарты Sequel,

SQL-86 и SQL-89.



R – Чтение

Π Проекция с агрегацией

σ Выборка

× Прямое произведение таблиц

Подзапрос

  • Запрос к результату выполнения другого запроса

  • ⋉ Полусоединение

sql-89 Новые возможности

    • Первичные и внешние ключи

    • Значения по умолчанию для атрибутов

    • Проверочные ограничения уровня кортежа

  • Интеграция с программами на языках программирования C и Ada

2

Стандарт SQL-92. Структура языка SQL. DDL,

DML, TCL, DCL

  • Стандарт содержит 579 страниц

  • Язык SQL стал инструментом программиста

  • Именно этот стандарт является базовым



  • Уровни соответствия

    • Основной

    • Фактически, аналогичен SQL-89

    • Средний

    • Полный

Поддержка Реляц. Алгебры

  • ⋈ Соединения

    • Естественное

    • Внутреннее

    • Внешнее

    • θ-соединение

  • Бинарные односхемные операции

    • Объединение

    • Пересечение

    • Разность



  • Преобразование значения в указанный тип (CAST)

  • Оператор выбора при вычислении значения атрибута(CASE WHEN)

  • Функции и операторы работы со строками

    • Конкатенация

    • Получение подстроки

    • Вхождение


Новые типы данных

  • date

  • time

  • interval

  • timestamp

  • bit

  • varchar

  • Nvarchar

Прочее

  • Возможность изменять схему базы данных

    • Добавление новых таблиц

    • Удаление существующих таблиц

    • Изменение существующих таблиц

  • INFORMATION_SCHEMA

    • Возможность запросами получить не только данные, но и метаданные – информацию о таблицах БД

  • Временные таблицы

  • Транзакции, уровни изоляции

  • Динамический SQL



3

Типы данных в SQL. Отклонения от стандарта в

разных СУБД









4

Роль фиксированного размера типов данных

SQL. Большие объекты как тип данных.

Локаторы



5

Индексы. Кластерный и некластерный индекс.

Виды некластерных индексов.

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

6

Виды именованных объектов в базах данных.

Правила именования

- snake case. Латиница. Нельзя с цифры. Роли таблиц: _AUD _LOG _TYPE. Столбцов: _ID _NUM . КЛЮЧИ: _PK _UK _FK

7

Создание таблиц. Создание первичных и

альтернативных ключей. Автоинкремент

CREATE TABLE имя_таблицы

(

имя_колонки1 тип_колонки1 параметры,

имя_колонки2 тип_колонки2 параметры,