Добавление записи в Many to Many связь MySQL

268
26 сентября 2018, 15:40

Есть many to many связь между 2-мя таблицами с помощью третьей таблицы:

Таблица 1 Facts:

    create table Facts
(
  text    text not null,
  fact_id int auto_increment
    primary key,
  constraint fact_id_UNIQUE
  unique (fact_id)
);

Таблица 2 Tags:

    create table Tags
(
  tag_id      int auto_increment
    primary key,
  name        varchar(32) not null,
  description text        not null,
  constraint tag_id_UNIQUE
  unique (tag_id),
  constraint name_UNIQUE
  unique (name)
);

И 3-я связующая таблица FactsTags:

create table FactsTags
(
  id      int(32) auto_increment
    primary key,
  fact_id int not null,
  tag_id  int not null,
  constraint id_UNIQUE
  unique (id),
  constraint fk_FactTags
  foreign key (fact_id) references Facts (fact_id)
    on delete cascade,
  constraint fk_TagFacts
  foreign key (tag_id) references Tags (tag_id)
    on delete cascade
);

При добавление какого либа факта, если теги уже существуют мне придётся делать 2 запроса? 1 чтобы создать запись факта, а второй чтобы добавить записи в связующую таблицу? Или как-то возможно 1 запросом добавлять факт и сразу записи с тегами на которые он ссылается.

Помогите пожалуйста, искал в интернете, пока что не нашёл.

READ ALSO
Посчитать статистику

Посчитать статистику

Есть таблицы articles(id, section_id) и sections(id) связанные соответственно связью один ко многим (одна секция имеет много статей)Я хочу узнать сколько...

226
Golang клиент не полностью считывает данные из conn.Read

Golang клиент не полностью считывает данные из conn.Read

ЗдраствуйтеПытаюсь написать приложение, в котором клиент передает select запрос серверу, который в свою очередь связывается с БД и передает...

262
Ссылки меню отображаются не правильно

Ссылки меню отображаются не правильно

Ссылка на сайт http://netahakitk/

224