Задать вопрос
@evilelf
Тупой, руки из жопы, кодю за зп и т.п. и т.д.

Как сделать множественный insert сразу в 2 таблицы?

Всем привет!

Дано:
Есть table1 и table1_meta.
Связь 1(table1) ко многим(table1_meta). По колонке table1_id

Задача:
Нужно сделать сразу insert в table1 и множество строк в table1_meta.

Вопросы:
Как это наиболее грамотно сделать для insert 1 строки table1 ?
Как это наиболее грамотно сделать для insert 10 строк table1 ?

Всем спасибо за ответы.
  • Вопрос задан
  • 1183 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 5
@Taksist410
Сначала делаете insert 10 строк table1 а уже потом множество строк в table1_meta.
Ответ написан
Ivanq
@Ivanq
Знаю php, js, html, css
Сразу вставить в разные таблицы не получится. Только двумя запросами.
Ответ написан
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
дофига-инсерт-одним-запросом называется LOAD DATA INFILE - вставит значения из файла. Но в 1 таблицу.
так что 2 раза - придется.
Ответ написан
Комментировать
elevenelven
@elevenelven
Php Dev @ Amadeus
Можно через триггеры попробовать. Но сильно зависит от того какие данные идут во вторую таблицу.

Может, можно через транзакции.

Приведите примеры запросов.
Ответ написан
Комментировать
dev.mysql.com/doc/refman/5.6/en/optimizing-innodb-...
вам нужен участок:
SET foreign_key_checks=0;
... SQL import statements ...
SET foreign_key_checks=1;

только нужно понимать что именно вы делаете, и что вставляемые вами данных не нарушат целостность внешних ключей, если всё ок, то просто пихаете данные в таблицы как вам угодно, хоть вперемешку.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы