powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вставка в 2 таблицы.
4 сообщений из 4, страница 1 из 1
Вставка в 2 таблицы.
    #37822564
Stellar Creed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Не знал где лучше опубликовать тему, тут или в разделе mysql.

Нужно послать в базу mysql достоточно много данных в 3 таблицы("клиент", "услуга" и связующая таблица "клиент-услуга" для связи многое-ко-многому).

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

Я делаю это так:
- запрос на вставку нового клиента
Код: php
1.
"INSERT INTO client(id,name) VALUES(NULL,"Bob");


- запрос на выборку последнего id в таблице "клиент"(для дальнейшего использования в промежуточной таблице)
Код: php
1.
"SELECT MAX( id ) AS client_id FROM client";


- запросы на добавление в таблицу "клиент-услуга" всех выбранных клиентом услуг (тут я и исползую выбранный ранее id клиента)
...
Код: php
1.
INSERT INTO client-offers(id,client_id,offer_id) VALUES(NULL,client_id,"Мыло");


...

Заранее спасибо
...
Рейтинг: 0 / 0
Вставка в 2 таблицы.
    #37822584
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stellar Creed,

А теперь:
- имитируем ситуацию, когда с разных коннектов прилетело сначала 2 раза INSERT INTO client, а потом SELECT MAX(id) FROM client.
- понимаем что топик-стартеру надо переквалифицироваться в дворники, так как ни на что больше он не способен. В том числе почитать про SQL вообще, блокировки (если уже не хотите пользоваться спец АПИ для этого) и MySQL в частности.
...
Рейтинг: 0 / 0
Вставка в 2 таблицы.
    #37822610
Stellar Creed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Warstone,
Да уж, большое вам спасибо, сейчас возьму и за пару минут прочитаю всю документацию по sql.
Забыл написать, что есть транзакция и сработает откат, если что-то не то.

Мне просто не нравиться 2 запрос, может как-то без него можно обойтись.
...
Рейтинг: 0 / 0
Вставка в 2 таблицы.
    #37822728
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LAST_INSERT_ID юзайте.
А в разные таблицы вы одним запросом не вставите.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вставка в 2 таблицы.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]