개발자 Q&A

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

2025.06.27 12:13

mysqli::refresh 함수 사용 시 오류 해결

목록
  • 코딩테스트러버 22일 전 2025.06.27 12:13
  • 58
    1
제가 현재 mysqli 연동을 공부 중입니다. mysqli::refresh 함수를 사용하여 테이블의 뷰를 갱신하려고 합니다. 하지만 다음과 같은 오류가 발생하고 있습니다.

php

$mysqli = new mysqli("localhost", "username", "password", "database");

$mysqli->query("CREATE TABLE test (id INT PRIMARY KEY)");

$mysqli->query("CREATE VIEW test_view AS SELECT * FROM test");

$mysqli->refresh("test_view");



위 코드에서 오류가 발생하는 이유는 무엇이며, 이를 해결하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  22일 전



    mysqli::refresh 함수는 MySQL 5.7 이상에서만 지원되는 함수입니다. 따라서 MySQL 버전이 낮은 경우 오류가 발생합니다.

    MySQL 버전을 확인하고, MySQL 5.7 이상으로 업그레이드하거나, 다른 방법으로 뷰를 갱신하는 방법을 고려해야 합니다.

    예를 들어, 뷰를 삭제하고 다시 생성하는 방법을 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $mysqli->query("DROP VIEW test_view");
    
    $mysqli->query("CREATE VIEW test_view AS SELECT * FROM test");
    
    


    또는 뷰를 갱신하는 쿼리를 직접 실행하는 방법을 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $mysqli->query("TRUNCATE TABLE test");
    
    $mysqli->query("INSERT INTO test VALUES (1), (2), (3)");
    
    $mysqli->query("UPDATE test SET id = id + 1");
    
    

    2025-06-27 12:14

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

검색

게시물 검색