MySQL 쿼리 에러 발생 시 파일명과 라인 번호를 함께 출력하여 디버깅하는 방법
페이지 정보

본문
MySQL 쿼리 에러 발생 시 파일명과 라인 번호를 함께 출력하여 디버깅하는 방법
그누보드 기능을 적용하거나 PHP 레거시 코드를 운영할 때 쿼리 에러가 발생한 정확한 파일명과 라인 번호를 화면에 출력하여 디버깅 효율을 높이는 방법을 확인합니다.
MySQL 쿼리 에러 발생 시 파일명과 라인 번호 출력 방법
PHP 환경에서 mysql_query 실행 시 에러가 발생한 정확한 소스코드의 파일 경로와 줄 번호, 그리고 구체적인 MySQL 에러 메시지를 함께 확인하려면 __FILE__ 매직 상수와 __LINE__ 매직 상수, mysql_error() 함수를 조합하여 사용할 수 있습니다.
적용 방법
PHP에서 직접 mysql_query를 사용하는 경우, 쿼리 실행 코드 뒤에 or die() 구문을 추가하여 에러 위치를 확인할 수 있습니다.
$res = mysql_query($sql) or die(__FILE__.": Line ".__LINE__."<p>".mysql_error());
그누보드 환경에서 sql_query() 함수를 사용하는 경우, 함수 호출 시 두 번째 인자에 true를 전달하면 내부적으로 에러 메시지를 출력합니다.
$result = sql_query($sql, true);
__FILE__: 현재 실행 중인 파일의 전체 경로를 반환합니다.__LINE__: 코드가 위치한 현재 파일의 줄 번호를 반환합니다.mysql_error(): 가장 최근에 발생한 MySQL 에러 문구를 반환합니다.
이 방식을 적용하면 에러가 발생했을 때 화면에 에러가 난 파일 경로와 라인 번호, 그리고 MySQL 구문 오류 내용을 동시에 출력하므로 디버깅 시간을 크게 줄일 수 있습니다.
함께 보면 좋은 글
- MySQL 5.x 업그레이드 후 발생하는 그누보드 1364 오류 해결 방법
- MySQL 5.7+ 환경 phpMyAdmin 그누보드 wrcontent 필드 변경 1067 에러 해결
- PHP 에러 제어 연산자(@) 사용법과 MySQL 에러 메시지 숨기기
참고자료
기타 참고자료
- 이전글그누보드 게시물 복사 시 추천·비추천 데이터 누락 해결 방법 26.10.05
- 다음글PHP mail 함수로 UTF-8 한글 이메일 안정적으로 발송하는 방법 26.10.05
댓글목록
등록된 댓글이 없습니다.