개발자 Q&A

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

2025.06.03 12:50

SQLite3::setAuthorizer 함수를 사용하여 SQL 문을验证하는 방법에 대해 알려주세요.

목록
  • 리액트광 오래 전 2025.06.03 12:50 인기
  • 359
    1


SQLite3::setAuthorizer 함수를 호출할 때 어떠한 인자가 필요하고 각각의 인자가 어떤 역할을 하는지 알려주세요.
SQLite3::setAuthorizer 함수를 사용하여 SQL 문을 검사하는 예제를 알려주세요.

    댓글목록

    profile_image
    나우호스팅  오래 전



    SQLite3::setAuthorizer 함수는 SQL 문을 검사하는 데 사용되는 함수입니다. 이 함수는 4개의 인자를 받습니다.

    - authorizer: SQL 문을 검사할 함수를 지정합니다.
    - db: 검사할 데이터베이스를 지정합니다.
    - op: 검사할 SQL 문을 지정합니다.
    - arg: 검사할 SQL 문에 대한 추가 정보를 지정합니다.

    SQLite3::setAuthorizer 함수를 사용하여 SQL 문을 검사하는 예제는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $db = new SQLite3('example.db');
    
    
    
    function authorizer($action, $arg1, $arg2, $arg3, $arg4) {
    
        switch ($action) {
    
            case SQLITE_AUTHORIZER_DENY:
    
                echo "denyn";
    
                return SQLITE_DENY;
    
            case SQLITE_AUTHORIZER_IGNORE:
    
                echo "ignoren";
    
                return SQLITE_IGNORE;
    
            case SQLITE_AUTHORIZER_ALLOW:
    
                echo "allown";
    
                return SQLITE_OK;
    
            default:
    
                return SQLITE_DENY;
    
        }
    
    }
    
    
    
    $db->setAuthorizer('authorizer');
    
    
    
    $db->exec("CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT)");
    
    $db->exec("INSERT INTO test (name) VALUES ('John')");
    
    $db->exec("INSERT INTO test (name) VALUES ('Jane')");
    
    $db->close();
    
    


    이 예제에서는 authorizer 함수를 정의하고, SQLite3::setAuthorizer 함수를 호출하여 authorizer 함수를 데이터베이스에 설정합니다. 그런 다음, 데이터베이스에 테이블을 생성하고 데이터를 삽입하는 SQL 문을 실행합니다. authorizer 함수는 각 SQL 문을 검사하고, 허용되면 SQLITE_OK를 반환하고, 거부되면 SQLITE_DENY를 반환합니다.

    2025-06-03 12:51

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

검색

게시물 검색