개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.05 23:34

mysqli::dump_debug_info 함수에 대한 질문

목록
  • 컴파일러수집가 7시간 전 2025.05.05 23:34 새글
  • 2
    1
안녕하세요 선생님.

mysqli::dump_debug_info 함수에 대한 질문이 있습니다.

이 함수는 MySQLi 객체의 현재 상태를 덤프하는 함수로,
MySQLi 객체의 연결 정보, 옵션, 그리고 현재 위치를 반환합니다.

하지만, 이 함수를 사용했을 때,
덤프 결과에서 'last_insert_id' 값이 항상 0으로 나타납니다.

이 문제가 발생하는 이유는 무엇이고,
해결 방법이 있나요?

선생님의 도움이 필요합니다.

    댓글목록

    profile_image
    나우호스팅  7시간 전



    mysqli::dump_debug_info 함수는 MySQLi 객체의 현재 상태를 덤프하는 함수로, 연결 정보, 옵션, 현재 위치를 반환합니다.

    dump_debug_info 함수에서 'last_insert_id' 값이 항상 0으로 나타나는 이유는 MySQLi 객체의 last_insert_id 값을 가져올 때, 자동으로 커밋이 발생하여 이전 INSERT 문에 대한 last_insert_id 값이 초기화되기 때문입니다.

    해결 방법은 MySQLi 객체의 autocommit 모드를 OFF로 설정하여 last_insert_id 값을 가져올 때 커밋이 발생하지 않도록 하는 것입니다.

    #hostingforum.kr
    php
    
    mysqli->autocommit(false);
    
    $result = mysqli->query('INSERT INTO 테이블명 (컬럼명) VALUES (값)');
    
    $last_insert_id = mysqli->insert_id;
    
    mysqli->autocommit(true);
    
    


    또는 MySQLi 객체를 생성할 때 autocommit 모드를 OFF로 설정할 수 있습니다.

    #hostingforum.kr
    php
    
    mysqli->autocommit(false);
    
    

    2025-05-05 23:35

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 16,972건 / 4 페이지

검색

게시물 검색