Laravel Обновление базы данных нескольких условий - PullRequest
0 голосов
/ 04 марта 2020

Как обновить базу данных с несколькими условиями?

Имя моей таблицы является рабочим

+----+-----+
| id | num |
+----+-----+
| 1  | 56  |
+----+-----+
| 2  | 44  |
+----+-----+
| 3  | 85  |
+----+-----+

, если входные значения: id = 1, num = 17

таблица должна быть обновлена ​​следующим образом

+----+-----+
| id | num |
+----+-----+
| 1  | 17  |
+----+-----+
| 2  | 44  |
+----+-----+
| 3  | 85  |
+----+-----+

или если значения id = 4, num = 56

обновленная таблица должна выглядеть примерно так:

+----+-----+
| id | num |
+----+-----+
| 1  | 17  |
+----+-----+
| 2  | 44  |
+----+-----+
| 3  | 85  |
+----+-----+
| 4  | 56  |
+----+-----+

есть ли Eloquent в laravel для обновления таблицы, если нет, пожалуйста дай мне решение

$update=DB::table('work')
->updateOrInsert(['id'=>$request->MasterId,'Agent_num' => '$request->num',],['id' =>$request->MasterId, 'Agent_num'=>$request->$request->num]);

Ответы [ 2 ]

1 голос
/ 04 марта 2020

Да, вы можете использовать для этого красноречивый запрос.

Вот пример:

$your_object->where('id','id_value')->where('num','num_value')->update(['num' => value_to_update]);

Пожалуйста, по крайней мере, в следующий раз предоставьте код, который Вы пытались, чтобы мы могли предоставить лучшее решение, если это необходимо.

0 голосов
/ 04 марта 2020

давайте возьмем пользовательскую таблицу, идентификатор которой равен единице, а модель названа как Пользователь, и вы хотите обновить его / ее информацию, такую ​​как номер / номер телефона, где идентификатор пользователя равен 4, можно сделать следующим образом:

User::where("id",4)->update( 'phone_number'=>'923069096975' );

В вашем случае вы можете указать свое модальное имя в User и значение id в 4, имя столбца в phone_number и значение, которое вы хотите обновить, в 923069096975.

это простое решение для вашего вопроса

...