Вставить несколько строк с помощью select

Я пытаюсь вставить 2 строки в одну таблицу. Первый будет вводить данные из выбора, второй будет использовать переменные для данных. Я могу вставить первую строку, но не могу вставить несколько строк.

$ partner_id позволяет связать строки друг с другом. Для этого я использую сгенерированное значение 32char в php. Есть ли способ установить edit_partner_id с mysql в качестве идентификатора первой вставленной строки или это невозможно из-за того, что первая строка должна быть создана до того, как вы сможете получить последний идентификатор?

Можно ли также добавить обновление к этому, или мне придется выполнить это в отдельном запросе?

$sql = "INSERT INTO edits_customers (customer_id, creator_id, firstname, surname,
            house_no, address_1, address_2, address_3, city, county, postcode,
            country, email, home_tel, mobile_tel, work_tel, notes, edit_type,
            edit_partner_id )
        (SELECT *, 'before', '{$partner_id}' FROM customers WHERE customers.id = 123),
        ('{$var1}', '{$var2}', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
            '', 'after', $partner_id)";

Спасибо

15
задан arbme 20 March 2011 в 05:09
поделиться