Встречается на собеседованиях • сегодня
Что необходимо для приведения таблицы к форме Бойса-Кодда кроме детерминанта
Для приведения таблицы к нормальной форме Бойса-Кодда (НФБК) необходимо, чтобы каждый нетривиальный функциональный детерминант был потенциальным ключом. Это означает:
- Все атрибуты должны зависеть от всего ключа, а не от его части (уже выполнено в 2НФ).
- Нет транзитивных зависимостей (уже выполнено в 3НФ).
- Ключевые атрибуты не должны зависеть от неключевых (главное отличие от 3НФ).
Пример:
sql
-- НЕ НФБК (OrderDetailID → ProductID, а ProductID → Supplier)
CREATE TABLE OrderDetails (
OrderDetailID INT PRIMARY KEY,
OrderID INT,
ProductID INT,
Supplier VARCHAR(100),
FOREIGN KEY (OrderID) REFERENCES Orders(OrderID)
);
-- НФБК (разделяем на 2 таблицы)
CREATE TABLE Products (
ProductID INT PRIMARY KEY,
Supplier VARCHAR(100)
);
CREATE TABLE OrderDetails (
OrderDetailID INT PRIMARY KEY,
OrderID INT,
ProductID INT,
FOREIGN KEY (ProductID) REFERENCES Products(ProductID)
);
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы