SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 05.09.2011 14:11:23

Syegorius
Завсегдатай
Зарегистрирован: 29.10.2010
Сообщений: 28

Как обьединить два insert запроса в разные таблицы в один

Доброе время суток, подскажите как объединить два insert запроса в разные таблицы в один.

insert into name_table set name="Vanya", surname="Ivanov", fathername="Ivanovich";
insert into location_table set address="Ivanovo 40";

еще вопрос можно ли объединить insert и update, т.е.

insert into name_table set name="Vanya", surname="Ivanov", fathername="Ivanovich";
update users_table set count_users = count_users+1 where name = "Ivan";

и еще вопрос можно ли как то объединить два запроса так что б во втором можно было получить id записи, которое было получено в предыдущем запросе, т.е.

insert into name_table set name="Vanya", surname="Ivanov", fathername="Ivanovich";
insert into some_table set last_inserted_id = id; - id - это id записи предыдущего запроса (в таблице name_table 4 поля: id(autoincrement), name, surname,fathername)

Заранее спасибо за ответі

Неактивен

 

#2 05.09.2011 17:11:49

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Как обьединить два insert запроса в разные таблицы в один

1. «Доброе время суток, подскажите, как объединить троллейбус с самолетом».
Зачем? Вам не нужно это. Никогда не нужно.

2. Чтобы LAST_INSERT_ID заработал, после него надо ставить скобочки:
INSERT INTO othertable (fieldname) SELECT LAST_INSERT_ID();

Неактивен

 

#3 08.09.2011 17:19:39

animegirl
Активист
Зарегистрирован: 28.07.2011
Сообщений: 288

Re: Как обьединить два insert запроса в разные таблицы в один

Тоже наткнулась на данную задачу, вопрос только в том насколько актуальна информация в "LAST_INSERT_ID()", оно передаётся одновременно с результатом записи, или идёт отдельным запросом, и если там будет бесконечный поток запросов, то ИД могут перепутаться?


Скажи миру - НЯ!

Неактивен

 

#4 08.09.2011 17:44:48

evgeny
Гуру
Зарегистрирован: 04.05.2009
Сообщений: 335

Re: Как обьединить два insert запроса в разные таблицы в один

вопрос только в том насколько актуальна информация в "LAST_INSERT_ID()", оно передаётся одновременно с результатом записи, или идёт отдельным запросом

передаётся одновременно с результатом записи
mysql_insert_id — Возвращает ID, сгенерированный при последнем INSERT-запросе.
http://il.php.net/manual/ru/function.my … ert-id.php

если там будет бесконечный поток запросов, то ИД могут перепутаться?

Нет, потому что ID передаётся одновременно с результатом записи

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson