개발자 Q&A

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

2025.05.11 05:08

sqlsrv_errors 함수 사용 시 오류 메시지 이해 도움 부탁드립니다.

목록
  • 프론트엔드기사 20일 전 2025.05.11 05:08 인기
  • 184
    1
제발 도와주세요.

sqlsrv_errors 함수를 사용하여 오류 메시지를 가져오려고 하는데,
오류 메시지의 번호와 메시지 자체를 구분할 수 있는 방법이 있나요?
또한, 오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있는 방법이 있나요?

예를 들어, SQL Server 에서 발생한 오류 메시지의 번호가 1205 인 경우,
오류 메시지의 번호와 메시지를 어떻게 구분할 수 있을까요?

예시 코드를 통해 구체적인 방법을 알려주시면 감사하겠습니다.

sql

<?php

    $serverName = "localhost";

    $connectionInfo = array("Database"=>"mydb");

    $conn = sqlsrv_connect($serverName, $connectionInfo);

    

    if ($conn === false) {

        $errors = sqlsrv_errors();

        foreach ($errors as $error) {

            echo "SQL Server Error: [" . $error['code'] . "] " . $error['message'] . "n";

        }

    }

?>


    댓글목록

    profile_image
    나우호스팅  20일 전



    sqlsrv_errors 함수는 오류 메시지를 가져올 때, 오류 메시지의 번호와 메시지를 구분하기 위한 방법을 제공하지 않습니다. 하지만, 오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있습니다.

    예를 들어, SQL Server 에서 발생한 오류 메시지의 번호가 1205 인 경우, 오류 메시지의 번호와 메시지를 구분할 수 있습니다.

    오류 메시지의 번호는 1205 인 경우, 오류 메시지의 메시지는 "The deadlock was detected while the following locks were being acquired." 입니다.

    오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있는 방법은 다음과 같습니다.

    1. 오류 메시지의 번호를 기준으로 오류 메시지를 배열에 저장합니다.
    2. 오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있는 배열을 생성합니다.
    3. 오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있는 배열을 사용하여 오류 메시지를 분류합니다.

    예시 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    <?php
    
        $serverName = "localhost";
    
        $connectionInfo = array("Database"=>"mydb");
    
        $conn = sqlsrv_connect($serverName, $connectionInfo);
    
    
    
        if ($conn === false) {
    
            $errors = sqlsrv_errors();
    
            $errorArray = array();
    
            foreach ($errors as $error) {
    
                $errorArray[$error['code']] = $error['message'];
    
            }
    
            foreach ($errorArray as $code => $message) {
    
                if ($code == 1205) {
    
                    echo "SQL Server Error: [1205] $messagen";
    
                } else {
    
                    echo "SQL Server Error: [$code] $messagen";
    
                }
    
            }
    
        }
    
    ?>
    
    


    이 예시 코드는 오류 메시지의 번호를 기준으로 오류 메시지를 분류할 수 있는 방법을 보여줍니다. 오류 메시지의 번호가 1205 인 경우, 오류 메시지의 메시지를 출력합니다. 오류 메시지의 번호가 1205 이 아닌 경우, 오류 메시지의 번호와 메시지를 출력합니다.

    2025-05-11 05:09

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

검색

게시물 검색