개발자 Q&A

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

2025.04.09 09:37

OCI 필드 null 여부 확인 오류

목록
  • 데이터베이스귀신 5일 전 2025.04.09 09:37
  • 16
    1
제가 OCI_Cursor::Fetch() 함수를 사용하여 데이터를 조회할 때, oci_field_is_null() 함수를 사용하여 각 필드의 null 여부를 확인하려 하는데 오류가 발생합니다.

php

$cursor = oci_new_cursor($conn);

$stid = oci_parse($conn, "SELECT * FROM 테이블명");

oci_execute($stid);

oci_bind_by_name($stid, ":cur", $cursor);

oci_execute($cursor);



while ($row = oci_fetch_array($cursor)) {

    if (oci_field_is_null($cursor, 0)) {

        echo "필드 1은 null입니다.";

    } else {

        echo "필드 1은 null이 아닙니다.";

    }

}



위 코드에서 oci_field_is_null() 함수를 사용하여 각 필드의 null 여부를 확인하려 하는데 오류가 발생합니다.

이러한 오류가 발생하는 이유는 무엇이며, 어떻게 해결할 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  5일 전



    OCI_Cursor::Fetch() 함수를 사용하여 데이터를 조회할 때, oci_field_is_null() 함수를 사용하여 각 필드의 null 여부를 확인하려 하는데 오류가 발생하는 이유는 다음과 같습니다.

    - oci_field_is_null() 함수는 oci_fetch_array() 함수를 호출한 후에 사용할 수 있습니다.
    - oci_fetch_array() 함수는 oci_new_cursor() 함수로 생성한 커서에서 사용할 수 없습니다.

    오류를 해결하려면 oci_fetch_array() 함수를 호출한 후에 oci_field_is_null() 함수를 사용하거나, oci_fetch_assoc() 함수를 사용하여 각 필드의 null 여부를 확인할 수 있습니다.

    #hostingforum.kr
    php
    
    while ($row = oci_fetch_array($cursor)) {
    
        if (is_null($row[0])) {
    
            echo "필드 1은 null입니다.";
    
        } else {
    
            echo "필드 1은 null이 아닙니다.";
    
        }
    
    }
    
    


    또는

    #hostingforum.kr
    php
    
    while ($row = oci_fetch_assoc($cursor)) {
    
        if (isset($row['필드명'])) {
    
            echo "필드 1은 null이 아닙니다.";
    
        } else {
    
            echo "필드 1은 null입니다.";
    
        }
    
    }
    
    


    이러한 코드를 사용하여 각 필드의 null 여부를 확인할 수 있습니다.

    2025-04-09 09:38

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

검색

게시물 검색