
SQLite3::setAuthorizer 메서드의 callback 함수에서 받을 수 있는 파라미터는 다음과 같습니다.
- int $action : SQL 문장의 유형 (CREATE, DROP, INSERT, UPDATE, DELETE, SELECT, etc.)
- string $table : SQL 문장에서 사용된 테이블 이름
- string $column : SQL 문장에서 사용된 열 이름
- string $cid : SQL 문장에서 사용된 열의 ID (NULL 또는 0)
- string $newval : SQL 문장에서 사용된 새로운 열 값 (NULL 또는 0)
- string $oldval : SQL 문장에서 사용된 이전 열 값 (NULL 또는 0)
callback 함수에서 반환할 수 있는 값은 다음과 같습니다.
- ACCESS_NONE : 열에 접근할 수 없음
- ACCESS_READ : 열에 읽기 전용 접근 가능
- ACCESS_WRITE : 열에 쓰기 전용 접근 가능
- ACCESS_CREATE : 열에 읽기/쓰기/생성/삭제 접근 가능
callback 함수에서 ACCESS_READ를 반환하면, 데이터베이스의 SELECT 문장에만 접근할 수 있습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 있지만, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_NONE을 반환하면, 데이터베이스의 모든 SQL 문장에 접근할 수 없습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 없으며, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_READ를 반환한 경우, 데이터베이스의 SELECT 문장에만 접근할 수 있습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 있지만, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_NONE을 반환한 경우, 데이터베이스의 모든 SQL 문장에 접근할 수 없습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 없으며, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_READ를 반환한 경우, 데이터베이스의 SELECT 문장에만 접근할 수 있습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 있지만, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_NONE을 반환한 경우, 데이터베이스의 모든 SQL 문장에 접근할 수 없습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 없으며, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_NONE을 반환한 경우, 데이터베이스의 모든 SQL 문장에 접근할 수 없습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 없으며, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_READ를 반환한 경우, 데이터베이스의 SELECT 문장에만 접근할 수 있습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 있지만, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
callback 함수에서 ACCESS_NONE을 반환한 경우, 데이터베이스의 모든 SQL 문장에 접근할 수 없습니다. 예를 들어, SELECT 문장에서 테이블의 열을 읽을 수 없으며, INSERT, UPDATE, DELETE 문장에서는 열에 접근할 수 없습니다.
2025-07-04 05:44