Согласен, тоже думал об этом. Но получается дофига запросов к бд. Да и ID собирать из table1. Хочется сделать 1 запросом сразу всё. Разбив число instert в table1 по 500 строк.
evilelf: Можно сделать не одним запросом а одной транзакцией. Зачем усложнять и разбивать на 500 строк? Мне кажется это лишнее и пройдёт любое число строк.
SET foreign_key_checks=0;
... SQL import statements ...
SET foreign_key_checks=1;
только нужно понимать что именно вы делаете, и что вставляемые вами данных не нарушат целостность внешних ключей, если всё ок, то просто пихаете данные в таблицы как вам угодно, хоть вперемешку.