Создать поле если нет, и создать поля в других таблицах

Задача такова: записать нового пользователя в таблицу, если его нет, и создать для него по 1 полю в двух других таблицах (в них будет статистика, которая заранее неизвестна, поэтому нужно оставить поля пустыми), и Id`ы этих строк занести в поля юзера.

Сначала гуглил про связывание таблиц, но я не понял, чем оно может помочь, если всё, что мне сначала известно о юзере - его Id в системе

Вопрос: как при создании пользователя создать для него записи в других таблицах, и Id`ы этих записей сохранить в юзере?

Сам пытаюсь организовать что-то такое:

INSERT INTO Users (Discord_Id, Month_Id, Year_Id)
VALUES (
    @id, 
    (INSERT INTO Month (null) VALUES (null) SELECT @@IDENTITY), 
    (INSERT INTO Year (null) VALUES (null) SELECT @@IDENTITY)
)
WHERE NOT EXISTS ( SELECT 1
    FROM Users 
    WHERE Discord_Id = @id
);

но признаков жизни эта команда не подаёт.

Какой способ решения подобной задачи будет правильным?


Ответы (0 шт):