SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

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

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

Вы не зашли.

#1 14.01.2010 08:20:19

name
Участник
Зарегистрирован: 14.01.2010
Сообщений: 3

INSERT в несколько таблиц

Помогите с составлением запроса.
В базе есть 2 таблицы. В одну записываем данные о фирме, в этой таблице есть свой первичный ключ – id. Во вторую таблицу заносится инфа о сотрудниках фирмы, в этой таблице есть свой первичный ключ (id) и есть поле, где должен хранится id фирмы из первой таблицы.
Как сделать запрос на добавление данных в эти 2 таблицы? Чтоб во второй таблице, где хранятся данные о сотрудниках, хранился код фирмы, в которой данный сотрудник работает.

Спасибо!

Неактивен

 

#2 14.01.2010 13:05:28

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

Re: INSERT в несколько таблиц

Сделать независимые запросы smile
id только что вставленной строки можно получить через LAST_INSERT_ID().
Тем более, что людей все равно будет больше, чем фирм smile

Неактивен

 

#3 14.01.2010 14:31:41

name
Участник
Зарегистрирован: 14.01.2010
Сообщений: 3

Re: INSERT в несколько таблиц

сделал таким образом
  $query="INSERT INTO `ur` "."\n VALUES('','$firma','$kpp','$inn','$ind','$gorod','$street','$phone','$mail','$data','$dog')";

    //узнаем последний созданный id первой таблицы
    $id = mysql_insert_id();

но переменная $id хранит 0

Отредактированно name (14.01.2010 14:32:27)

Неактивен

 

#4 14.01.2010 14:55:50

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: INSERT в несколько таблиц

А сам то запрос вы выполнили mysql_query($query) ?

Необязательно получать в явном виде id через mysql_insert_id(). Лишние действия, можно сразу использовать last_insert_id() в следующем запросе:

INSERT INTO `вторая_таблица` VALUES(last_insert_id(), ....);

Неактивен

 

#5 14.01.2010 15:05:33

name
Участник
Зарегистрирован: 14.01.2010
Сообщений: 3

Re: INSERT в несколько таблиц

точно!
всё, пора отдыхать

Неактивен

 

Board footer

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