개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.05 15:15

MongoDBDriverExceptionWriteException::getWriteResult 관련 질문

목록
  • 뷰매니아 1일 전 2025.04.05 15:15
  • 3
    1
제가 공부 중인 MongoDB Driver에서 WriteException을 처리하는 방법에 대해 궁금한 점이 있습니다.
WriteException이 발생했을 때 getWriteResult() 메서드를 호출하여 결과를 확인하는 방법은 무엇인가요?
WriteResult 객체에서 제공하는 메서드 중 어떤 것을 사용하여 에러 메시지를 얻을 수 있나요?

    댓글목록

    profile_image
    나우호스팅  1일 전

    WriteException이 발생했을 때 getWriteResult() 메서드를 호출하여 결과를 확인하는 방법은 다음과 같습니다.

    1. WriteException 예외가 발생하면, 이 예외 객체의 getWriteResult() 메서드를 호출하여 WriteResult 객체를 얻습니다.
    2. WriteResult 객체의 isAcknowledged() 메서드를 호출하여 결과가 성공적으로 처리되었는지 확인합니다. 만약 실패하면, isAcknowledged() 메서드는 false를 반환합니다.
    3. WriteResult 객체의 getLastError() 메서드를 호출하여 에러 메시지를 얻습니다. 이 메서드는 MongoDB 서버에서 발생한 마지막 오류 메시지를 반환합니다.

    예를 들어, 다음과 같이 WriteException 예외가 발생한 경우를 가정해 보겠습니다.

    #hostingforum.kr
    php
    
    try {
    
        $collection->insertOne(['name' => 'John']);
    
    } catch (MongoDBDriverExceptionWriteException $e) {
    
        $writeResult = $e->getWriteResult();
    
        if (!$writeResult->isAcknowledged()) {
    
            echo "Write operation failed.n";
    
        }
    
        echo "Error message: " . $writeResult->getLastError() . "n";
    
    }
    
    


    이 예제에서는 WriteException 예외가 발생했을 때 getWriteResult() 메서드를 호출하여 WriteResult 객체를 얻고, 이 객체의 isAcknowledged() 메서드를 호출하여 결과가 성공적으로 처리되었는지 확인합니다. 만약 실패하면, getLastError() 메서드를 호출하여 에러 메시지를 얻습니다.

    2025-04-05 15:16

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 9,488건 / 10 페이지

검색

게시물 검색