Загрузка данных


-- 1. Создание таблицы: Область знаний
CREATE TABLE Область_Знаний (
    ID_Области INT IDENTITY(1,1) PRIMARY KEY,
    Наименование NVARCHAR(150) NOT NULL UNIQUE
);
GO

-- 2. Создание связующей таблицы (так как одна книга может относиться к разным областям, 
-- а одна область содержит множество книг)
CREATE TABLE Книга_Область (
    ID_Книги INT NOT NULL,
    ID_Области INT NOT NULL,
    
    -- Составной первичный ключ, чтобы исключить дублирование одинаковых связей
    PRIMARY KEY (ID_Книги, ID_Области),
    
    -- Внешний ключ на таблицу Книг
    CONSTRAINT FK_КнигаОбласть_Книга FOREIGN KEY (ID_Книги)
        REFERENCES Книга(ID_Книги) ON DELETE CASCADE,
        
    -- Внешний ключ на таблицу Областей знаний
    CONSTRAINT FK_КнигаОбласть_Область FOREIGN KEY (ID_Области)
        REFERENCES Область_Знаний(ID_Области) ON DELETE CASCADE
);
GO