라이브러리

[PHP] mysqli_stmt::$error_list - 마지막으로 실행된 명령문의 오류 목록을 반환합니다.




mysqli_stmt::$error_list

mysqli_stmt::$error_list는 MySQLi_STMT 객체의 에러 목록을 반환하는 내장 변수입니다. 이 변수는 쿼리 실행 중에 발생한 에러를 포함하고 있으며, 에러가 발생하지 않은 경우에는 빈 배열을 반환합니다.

사용 예제

#hostingforum.kr
php

<?php

// MySQLi 연결 설정

$servername = "localhost";

$username = "root";

$password = "";

$dbname = "mydb";



// MySQLi 연결 생성

$conn = new mysqli($servername, $username, $password, $dbname);



// 쿼리 실행

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

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



// 에러가 발생하지 않은 경우

if ($stmt->execute()) {

    echo "쿼리 실행 성공
";

} else {

    // 에러 목록 출력

    print_r($stmt->error_list);

}



// 쿼리 실행

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



// 에러가 발생한 경우

if ($stmt->execute()) {

    echo "쿼리 실행 성공
";

} else {

    // 에러 목록 출력

    print_r($stmt->error_list);

}

?>



위 예제에서, 두 번째 쿼리 실행 시 `id` 열에 문자열 `'a'`를 입력하여 에러를 발생시킵니다. 이 경우 `mysqli_stmt::$error_list` 변수에 에러 정보가 저장됩니다.

출력 결과

#hostingforum.kr
php

Array

(

    [0] => Array

        (

            [error] => SQLSTATE[HY000]: General error: 1366 Incorrect integer value: 'a' for column 'id' at row 1

            [errno] => 1366

            [sqlstate] => HY000

            [message] => Incorrect integer value: 'a' for column 'id' at row 1

        )



)



위 예제에서, 두 번째 쿼리 실행 시 에러가 발생하여 `mysqli_stmt::$error_list` 변수에 에러 정보가 저장됩니다. 에러 정보는 다음과 같습니다.

- `error`: 에러 메시지
- `errno`: 에러 번호
- `sqlstate`: SQL 상태 코드
- `message`: 에러 메시지

이러한 정보를 통해 에러를 분석하고 해결할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

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

검색

게시물 검색