개발자 Q&A

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

2025.06.04 09:22

pg_result_error 함수 사용 방법에 대한 질문

목록
  • C++장인 2일 전 2025.06.04 09:22
  • 5
    1
저는 PostgreSQL에서 pg_result_error 함수를 사용하여 오류 메시지를 처리하려 합니다. 하지만 오류 메시지가 여러 줄로 나뉘어져 있는 경우, pg_result_error 함수를 사용하여 모두 가져올 수 있을까요?

그리고 pg_result_error 함수의 결과를 문자열로 변환하는 방법은 무엇인가요?

예를 들어, 오류 메시지가 다음과 같은 경우, 어떻게 처리해야 할까요?

Error message 1
Error message 2
Error message 3

저는 pg_result_error 함수의 결과를 다음과 같이 처리하고 싶습니다.

"Error message 1\nError message 2\nError message 3"

혹시 pg_result_error 함수를 사용하여 오류 메시지를 처리하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  2일 전



    pg_result_error 함수는 오류 메시지를 하나의 문자열로 반환하지 않습니다. 대신, 오류 메시지를 여러 줄로 나누어 반환합니다.

    오류 메시지를 모두 가져오려면, pg_result_error 함수를 반복적으로 호출하여 오류 메시지를 하나씩 가져와야 합니다.

    다음은 예제입니다.

    #hostingforum.kr
    sql
    
    DO $$
    
    DECLARE
    
        error_message text;
    
    BEGIN
    
        FOR error_message IN SELECT pg_result_error('your_query')
    
        LOOP
    
            RAISE NOTICE '%', error_message;
    
        END LOOP;
    
    END $$;
    
    


    pg_result_error 함수의 결과를 문자열로 변환하는 방법은 없습니다. 하지만, 오류 메시지를 하나씩 가져와서 문자열로 변환하는 방법은 있습니다.

    다음은 예제입니다.

    #hostingforum.kr
    sql
    
    DO $$
    
    DECLARE
    
        error_message text;
    
        error_messages text := '';
    
    BEGIN
    
        FOR error_message IN SELECT pg_result_error('your_query')
    
        LOOP
    
            error_messages := error_messages || error_message || 'n';
    
        END LOOP;
    
        RAISE NOTICE '%', error_messages;
    
    END $$;
    
    


    이 예제에서는 오류 메시지를 하나씩 가져와서 error_messages 변수에 추가합니다. 오류 메시지가 여러 줄이면, error_messages 변수에 '\n'을 추가하여 다음 줄을 분리합니다.

    2025-06-04 09:23

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

검색

게시물 검색