>데이터 베이스 >MySQL 튜토리얼 >PHP의 MySQL 확장 기능을 사용할 때 쿼리 실패를 어떻게 처리할 수 있나요?

PHP의 MySQL 확장 기능을 사용할 때 쿼리 실패를 어떻게 처리할 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-29 12:50:15715검색

How Can I Handle Query Failures When Using PHP's MySQL Extensions?

PHP MySQL 확장에서 쿼리 실패 처리

MySQL 테이블에서 데이터를 추출하려고 할 때 가끔 "mysql_fetch_array()와 같은 오류가 발생합니다. 매개변수 1이 리소스일 것으로 예상하며 부울이 주어질 수 있습니다."가 발생할 수 있습니다. 이 오류는 쿼리 함수가 실패하여 예상 리소스 핸들 대신 부울 값("false")이 발생했음을 나타냅니다.

제공된 PHP 코드에서:

$result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username');

while($row = mysql_fetch_array($result)) {
    echo $row['FirstName'];
}

오류가 발생합니다. 쿼리 함수(mysql_query)는 실행 성공 시 true를 반환하거나 실패 시 false를 반환할 수 있기 때문입니다. 잘못된 구문, 존재하지 않는 테이블 등 다양한 이유로 제공된 SQL 문이 실패할 수 있다는 점 유의하시기 바랍니다.

이를 해결하려면 행을 가져오기 전에 쿼리 함수의 결과를 확인해야 합니다. mysql_fetch_array를 사용합니다. $result가 false로 평가되면 쿼리가 실패했음을 의미하므로 오류를 적절하게 처리해야 합니다.

사용되지 않는 MySQL 확장의 경우:

  • 사용 mysql_error를 사용하여 쿼리 실패와 관련된 오류 메시지를 검색합니다.
  • 사용자에게 친숙한 오류 메시지를 출력하거나 디버깅을 위해 오류를 기록합니다.
if($result === FALSE) {
    trigger_error(mysql_error(), E_USER_ERROR);
}

MySQLi 확장의 경우:

  • 오류를 얻으려면 mysqli 개체의 mysqli_errno 속성을 확인하세요.
  • mysqli_error를 사용하여 오류를 검색하세요.
  • 오류를 적절하게 처리하세요.
if($result->errno) {
    // Log or output the error message
}

위 내용은 PHP의 MySQL 확장 기능을 사용할 때 쿼리 실패를 어떻게 처리할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.