Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> insert into table ... select ... from table2 where 
V
    Опции темы
DeamonShan
Дата 5.5.2008, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



есть такой запрос, 

Код

 $db->sql_query("insert into `ac_schet` (data,id_postavshik,id_contragent,num,numdov,datedov,numnak,fiopol,oplata,rate,status) select data,id_postavshik,id_contragent,num,numdov,datedov,numnak,fiopol,oplata,rate,status from `ac_schet` where id='$id'");


результат: копирование строки с id=$id

но строка $id в таблице `ac_schet` связана с многочисленными строками другой таблицы. id заполняется auto_increment-ом, то есть после копирование строки $id получаем новую копию строки с новым id рывным [значение auto_increment] +1 (ну это понятно)... теперь те строки с другой таблицы, связанные со строкой $id из таблицы `ac_schet`, нужно продублировать и связать с копированной строкой... задача такая, как определить id дублированной строки, при условии, что эту операцию могут проделать одновременно скажем 100 человек.... с разными строка... я это к тому, что id новой строки не обязательно будет $id+1...
PM MAIL   Вверх
Feldmarschall
Дата 5.5.2008, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



а почему ты копируешь строку без id?
PM   Вверх
DeamonShan
Дата 5.5.2008, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



потому что он заполнится auto_increment-ом.... если к БД цеплялся один юзер, то понятно былобы.. последнюю запись взял, id определил и прописал в строки из другой таблицы, вся проблема в том, что к базе цепляются сразу несколько чел и id строки дублированной фик знает какой будет, вот, после дубляжа необходимо определить id именно этой строки... продублированоой
PM MAIL   Вверх
Feldmarschall
Дата 5.5.2008, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Что-то у тебя странная какая-то структура.
погоди. ты копируешь из той же таблицы? Это вообще ни в какие ворота не лезет. Какой в этом смысл? 
PM   Вверх
DeamonShan
Дата 5.5.2008, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



да да, копирую строку в таблице ac_schet в себя... 

вот к примеру. ac_schet содержит имена покупателей к каждому покупателю привязан купленный товар в другой таблице...

необходимо продублировать этого покупатяля, и товары что он купил.... соответсвенно, id копии покупателя будет другим, и каждый товар тоже имеет id в своей таблице и тоже должны быть другими уже отличными от оригиналов 
PM MAIL   Вверх
Feldmarschall
Дата 5.5.2008, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



не нужно ничего копировать.
объясни, зачем это потребовалось, и тебе расскажут, как делать по-человечески.
PM   Вверх
DeamonShan
Дата 5.5.2008, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



обясняю....

я купил 10 шт мышек, 10 клав, 10 моников, 10 компов, и куча куча куча всего.... на меня оформили все документы и выписали накладную...

пришол ты, и купил тоже самое абсолютно или за исключением нескольких товаров...



тут менеджер просто тыкает на меня и говорить продублировать... затем заходит в редактор и изменяет мое имя на твое и парочку лишних товаров удаляет....

вот для чего это нужно... чтобы повторно одно и тоже не вводить...

или другой пример, есть описание товара скажем сервера.... с аксесуарами в другой таблице, 

в прайс нужно добавить еще один такой же сервак не с двумя процами, а содним... берется то описание дублируется и меняется конфиг...
PM MAIL   Вверх
smartov
Дата 5.5.2008, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



DeamonShan, mysql_insert_id() поможет отцу русской демократии smile

Добавлено @ 16:26
Если тебя волнует не будет ли он возвращать неправильно при множестве пользователей - ответ - не будет т.к. он сохраняется уникальный для каждого соединения. По крайней мере так заверяет официальный reference от mysql.

Это сообщение отредактировал(а) smartov - 5.5.2008, 16:26
PM MAIL   Вверх
DeamonShan
Дата 5.5.2008, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



[QUOTE=smartov,5.5.2008,  16:24]DeamonShan, mysql_insert_id() поможет отцу русской демократии smile

то что нужно, СПС)))))


черт в класс дописать нуно эту функцию)))

Добавлено через 9 минут и 53 секунды
заработало... всем спасибо...

Это сообщение отредактировал(а) DeamonShan - 5.5.2008, 16:32
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0770 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.