라이브러리

[PHP] mysqli_stmt::get_warnings - SHOW WARNINGS의 결과 가져오기




mysqli_stmt::get_warnings

mysqli_stmt::get_warnings은 MySQLi_STMT 객체의 메소드 중 하나로, SQL 문을 실행한 후 발생한 경고 메시지를 얻을 수 있는 메소드입니다. 이 메소드는 SQL 문을 실행한 후에만 호출할 수 있으며, SQL 문을 실행하기 전에 호출하면 경고 메시지가 반환되지 않습니다.

사용 방법

mysqli_stmt::get_warnings 메소드는 다음과 같은 형식으로 호출할 수 있습니다.

#hostingforum.kr
php

mysqli_stmt::get_warnings()



이 메소드는 MySQLi_STMT 객체의 인스턴스를 반환하지 않으며, 경고 메시지를 배열로 반환합니다. 각 경고 메시지는 다음과 같은 형식을 가집니다.

#hostingforum.kr
php

array(

    'errno' => int,

    'error' => string,

    'sqlstate' => string

)



- `errno` : 경고 메시지의 오류 번호입니다.
- `error` : 경고 메시지의 내용입니다.
- `sqlstate` : 경고 메시지의 SQL 상태 코드입니다.

예제

다음 예제는 mysqli_stmt::get_warnings 메소드를 사용하여 SQL 문을 실행한 후 발생한 경고 메시지를 얻는 방법을 보여줍니다.

#hostingforum.kr
php

// MySQLi 연결 객체 생성

$conn = new mysqli('localhost', 'username', 'password', 'database');



// SQL 문을 실행할 준비

$stmt = $conn->prepare('SELECT * FROM users WHERE id = ?');



// SQL 문을 실행

$stmt->bind_param('i', 1);

$stmt->execute();



// 경고 메시지 얻기

$warnings = $stmt->get_warnings();



// 경고 메시지 출력

if ($warnings) {

    echo "경고 메시지:
";

    while ($warning = $warnings->fetch_assoc()) {

        echo "errno: $warning[errno]
";

        echo "error: $warning[error]
";

        echo "sqlstate: $warning[sqlstate]
";

    }

} else {

    echo "경고 메시지가 없습니다.
";

}



// MySQLi 연결 객체 닫기

$conn->close();



이 예제에서는 `SELECT * FROM users WHERE id = ?` SQL 문을 실행한 후 발생한 경고 메시지를 얻어 출력합니다. 만약 SQL 문을 실행할 때 경고 메시지가 발생하지 않으면 "경고 메시지가 없습니다."라는 메시지가 출력됩니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 376 페이지

검색

게시물 검색