SQL Flashcards
Расскажите про 1 НФ в БД?
1 НФ обладает следующими требованиями:
1) нет дубликатов строк;
2) в каждой ячейке - атомарное значение;
3) в столбце данные 1 типа.
Расскажите про 2 НФ в БД?
2 НФ обладает следующими требованиями:
1) таблица должна находиться в 1 НФ;
2) таблица должна иметь primary key;
3) все неключевые столбцы должны зависеть от полного первичного ключа (если он составной), если он не составной то это правильно не нарушается.
Как создается внешний ключ?
company_id REFERENCES company (id) или
FOREIGN KEY (company id) REFERENCES company (id)
Что такое НФБД?
Набор правил, которым БД должна следовать. Всего нормальных форм - 9. На практике используются первые 3 НФ. ТК в следующих нормальных формах теряется производительность.
Расскажите про 3 НФ в БД?
3 НФ обладает следующими требованиями:
1) таблица должна находиться в 2 НФ;
2) отсутствует транзитивная зависимость неключевых столбцов.
Что такое реляционная БД?
Реляционная БД представляет собой совокупность таблиц, которые могут быть связаны между собой. Для связывания таблиц обычно используется PRIMARY KEY, FOREIGN KEY.
Типы JOIN в SQL
1) INNER JOIN
2) CROSS JOIN
3) LEFT (OUTER) JOIN
4) RIGHT (OUTER) JOIN
5) FULL (OUTER) JOIN
Разница между Inner Join и Left Join
Inner Join в результат добавляет каждую запись, которая содержится и в левой, и в правой таблице (например, если какая-то запись = null, то в результирующей таблице её не будет).
Left Join работает наоборот, в результате будут все значения из левой таблицы, соединенные с соответствующими значениями в правой таблице.
ACID
A - атомарность - гарантирует, что каждая транзакция будет выполняться как единое целое. Будут либо выполнены все подоперации либо не выполнено ни одной.
C - консистентность - Каждая успешная транзакция фиксирует только допустимые результаты. Если до транзакции данные были согласованны, то и после транзакции данные тоже должны быть согласованы.
I - изолированность - Во время выполнения транзакции параллельные транзакции не должны оказывать влияние на ёё результат.
D - устойчивость - если произошел успешный коммит транзакции, то данные зафиксируются вне зависимости от внешних факторов
ACID
A - атомарность - гарантирует, что каждая транзакция будет выполняться как единое целое. Будут либо выполнены все подоперации либо не выполнено ни одной.
C - консистентность - Каждая успешная транзакция фиксирует только допустимые результаты. Если до транзакции данные были согласованны, то и после транзакции данные тоже должны быть согласованы.
I - изолированность - Во время выполнения транзакции параллельные транзакции не должны оказывать влияние на ёё результат.
D - устойчивость - если произошел успешный коммит транзакции, то данные зафиксируются вне зависимости от внешних факторов