메뉴 건너뛰기

프로그램언어

조회 수 353 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
 
Warning: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0

mysql_query()라는 함수를 써주면 질의의 결과가 메모리에 남게 된다.
그래서 이 질의 결과를 메모리에서 해제 시켜주기 위해 존재하는 함수가 mysql_free_result()이다.

필자의 경험상 mysql_query()함수를 쓴뒤 mysql_free_result()를 써주지 않아도 오류로 웹페이지가 안뜨거나 하는일은 없었다. 하지만, 위의 오류 처럼 "mysql_query()를 썼으면 그걸 해제해주세요~" 라는 식으로 경고 메세지가 뜬다.

웹서핑을 해도 위와 같은 오류일때는, 오류문구를 안뜨게 하면 그만이라는 식의...
" mysql.trace_mode = Off 하세요" 라는내용만 나오길래 짜증나서 이글을 써본다. (이게 알아보니 php메뉴얼의 아래 글중에도 이러라고 되어 있는거 같다.ㅡ.ㅡ; )

저 오류는 보통
$result = mysql_query("select * from testdb");
라는 식의 함수를 쓴뒤
mysql_free_result($result);
라고 메모리 해제를 해주지 않았기에 뜨는 오류이다.


추가사항(2011.04.08)
select 질의문이 아닌, update, delete, insert와 같은 질의를 해도 나오는 결과물이 성공 또는 실패 정도만 나오는 질의문인 경우에는 해당 함수로 메모리 해제를 해줄 필요가 없다.
어찌 보면 당연한 얘기지만, 필자의 경우 질의문이 많이 모여 있는 페이지를 작성시에 모든 질의의 결과를 $result와 같은 하나의 변수에다가 다 처리한뒤 맨 아래에 mysql_free_result()로 한번만 처리를 해주곤 한다. 아마 다른 분들도 이런식으로 한번에 처리 하시는 분들이 많을것이라고 본다.
하지만 이럴경우 가장 마지막에 실행한 질의가 update문이었다고 하고, 그 질의의 올바른 실행여부를 판단하기 위해서 여전히 $result 변수를 썼다면, 이것은 오히려

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource ... 오류페이지..

와 같은.. mysql_free_result() 함수에 들어간 파라미터가 올바르지 않다는 식의 오류가 뜨게 된다.


  1. No Image 27Oct
    by
    2018/10/27 Views 4091 

    PHP eregi가 빠를까, strpos가 빠를까?

  2. php date 날짜 관련 함수

  3. PHP continue 문

  4. No Image 12Jan
    by
    2023/01/12 Views 270 

    PHP - 공공 DATA XML 파싱(PHP 버전)

  5. No Image 21Jan
    by
    2021/01/21 Views 1141 

    PHP + 유튜브(youtube) 동영상 업로드 연동 소스

  6. No Image 25Feb
    by
    2019/02/25 Views 1558 

    PHP $_SERVER 함수

  7. No Image 26Mar
    by
    2021/03/26 Views 690 

    PEAR DB 관련 함수들

  8. No Image 23Dec
    by
    2016/12/23 Views 19774 

    parse_ini_file — Parse a configuration file

  9. No Image 24Jul
    by
    2018/07/24 Views 4798 

    MySQL테이블의 내용을 엑셀파일(xls)로 다운로드 하기

  10. No Image 23Dec
    by
    2016/12/23 Views 18967 

    mysql_result — 결과 데이터를 반환

  11. No Image 23Dec
    by
    2016/12/23 Views 18640 

    mysql_real_escape_string 이진 데이터를 입력할 경우 이 함수를 사용해야 함

  12. No Image 23Dec
    by
    2016/12/23 Views 18752 

    mysql_insert_id

  13. No Image 25Mar
    by 조쉬
    2021/03/25 Views 353 

    mysql_free_result(); 관련 오류

  14. No Image 23Dec
    by
    2016/12/23 Views 18807 

    mysql_affected_rows — 최근 MySQL 작업으로 변경된 행 개수를 얻음

  15. No Image 28Mar
    by
    2018/03/28 Views 8154 

    MySQL(MariaDB) 테이블 만들기

  16. No Image 27Feb
    by
    2014/02/27 Views 20349 

    mysql 에러 구문 표시

  17. No Image 27Feb
    by
    2014/02/27 Views 19729 

    MYSQL 업데이트 두 번 하기

  18. No Image 26Mar
    by
    2021/03/26 Views 915 

    MYSQL DB의 모든 테이블에서 문자열 검색 하기

  19. No Image 14Apr
    by
    2015/04/14 Views 20157 

    MySQL DB 중복여부 검사하여 없는 것만 추가

  20. No Image 26Mar
    by
    2021/03/26 Views 284 

    MYSQL DB 다중접속을 해결 하는 한 방법

Board Pagination Prev 1 ... 8 9 10 11 12 13 14 15 16 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved