Вы можете вставлять данные в таблицу один за другим.Но если вам нужно гарантировать, что данные существуют во всех таблицах одновременно, вы должны использовать транзакцию.Это поможет, если что-то идет не так, и вы не получите противоречивые данные в БД.Например, в PHP вы делаете это так:
$pdo_con = new PDO(...);
try {
$pdo_con->beginTransaction();
$pdo_con->exec("INSERT INTO table1 ....");
$table1_id = $pdo_con->lastInsertId();
$pdo_con->exec("INSERT INTO table2 ....");
$table2_id = $pdo_con->lastInsertId();
$pdo_con->exec("INSERT INTO linked_table .... values($table1_id, $table2_id )");
//repeat for other tables
$pdo_con->commit();
catch(PDOException $e) {
$pdo_con->rollback();
}