Например, у меня есть следующий запрос, который обновляет новую строку:
$query->where('email', '=', $user->email)->where('card_uid', '=', $k)
->update( array('email' => $user->email, 'card_uid' => $k, 'have_quantity' => ($card->have_quantity+$v)) );
Я хотел бы получить обновленную (или вставленную) строку. Я попробовал следующее, но это не работает:
$row = $query->where('email', '=', $user->email)->where('card_uid', '=', $k)
->update( array('email' => $user->email, 'card_uid' => $k, 'have_quantity' => ($card->have_quantity+$v)) )
->get();
Как я могу легко получить строку, которую я обновляю или вставляю?
Вы можете попробовать сначала использовать тот же экземпляр построителя запросов для обновления, а затем выполнить запрос select. (Вы не можете сделать это так, как вы пытались, потому что update()
возвращает количество затронутых строк)
$query->where('email', '=', $user->email)->where('card_uid', '=', $k);
$query->update(array('email' => $user->email, 'card_uid' => $k, 'have_quantity' => ($card->have_quantity+$v)))
$row = $query->get();
Других решений пока нет …