170 похожих чатов

Всем привет. Необходимо вставить, или обновить записи в таблице базы Делал

так, типа ищу user_id, если его нет то создаю
если он есть то обновляю.

$response = \DB::table('Contacts')->updateOrInsert(
[
'user_id' => $Params['user_id'] // ищем user_id = XXX
],
[
'name' => $Params['name'] // создаем/обновляем имя
]
);


Все гуд и так все работает.
тока вопрос, если мне необходимо выполнить такое же для 300 к примеру контактов?

в цикле выполнять запрос к базе - не есть хорошо, как же так бы пакетно все это сделать?

16 ответов

21 просмотр

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

Отличный совет

Роман-Webds Автор вопроса

)) нее я лучше убью время

То, что ты ищешь, гуглится по слову "laravel bulk update", больше ничего не скину, т.к. с телефона)

Роман-Webds Автор вопроса

laravel bulk update ща посмотрю

Роман-Webds Автор вопроса

нашел, в 8-й ларке появился upsert , как бы его на 7-й ларке выполнить

Скопипастить код

чего появилось?

Роман-Webds Автор вопроса

в ларьке 8 нашел то что мне нужно. появился метод там upsert (https://www.amitmerchant.com/insert-or-update-multiple-records-using-upsert-in-laravel8/) тока не совсем понял, это пакет отдельно используется или вшит метод в ларку. Кто его использовал уже? И самый вопрос - как бы мне его использовать в Ларке 7-й

добавить несуществующий метод, который будет иметь доступ ко всему объекту где находится макрос

Роман-Webds Автор вопроса

правильно ли я понял: 1. находим как реализован метод upsert в ларьке 8 2. создаем макрос - куда дописываем необходимый функционал, который в ларьке 8 3. подключаем макрос к ларьке 7 через композер, если много макросов то через класс Миксин

3. в сервис провайдере подключаешь его

Роман-Webds Автор вопроса

ну или так или через композер- я прочитал можно так и так. Сейчас теперь вопрос как бы вытащить полную функциональность по методу upsert

вот что я нагуглил https://gist.github.com/tomcastleman/7285a59ee242f929e0cbe6974bc4b799

гист старый, сравни такой ли синтаксис upsert в новой версии

Роман-Webds Автор вопроса

ага, я понял, сравню сейчас, это уже ктото делал макро я так понимаю

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта