>  Q&A  >  본문

Laravel Eloquent는 업데이트된 값이 데이터베이스의 이전 데이터와 동일한 경우 0을 반환합니다.

laravel 8에 문제가 있습니다. 아래 쿼리를 처음 실행하면 아무 문제 없이 잘 작동하지만, 다시 실행하면 "isprocess" 값을 다음으로 변경하지 않는 한 항상 실패 메시지가 표시됩니다. 이전 업데이트와 다릅니다.

업데이트된 값이 동일하게 유지되는데 성공 메시지를 계속 표시하려면 어떻게 해야 하나요?

$updateIsProses = DB::table('pricelist_naikharga')->whereDate('tanggal', '<=', '2022-05-01')->update(["isproses" => 1]);

       if($updateIsProses){
            echo outputJson(200, "BerhasilSuccess");
       }else{
            echo outputJson(500, "Fail");
       }

P粉662361740P粉662361740229일 전374

모든 응답(1)나는 대답할 것이다

  • P粉262926195

    P粉2629261952024-03-28 00:38:46

    쿼리 빌더의 update() 메소드는 영향을 받은 행 수를 반환합니다.

    실패 또는 성공 여부를 확인하는 값은 정확하지 않습니다. 동일한 쿼리를 두 번 실행하면 두 번째 쿼리가 어떤 행에도 영향을 주지 않고 결과적으로 false

    로 평가되는 0을 반환하기 때문입니다.

    오류가 발생하면 예외가 발생합니다

    으아아아

    회신하다
    0
  • 취소회신하다