이 명령은 현재의 현재 사용자 식별자를 토토 결과합니다. SQL 세션은role_name. 그만큼 역할 이름은 식별자 또는 문자열로 쓸 수 있습니다. 오자. 후에역할 토토 결과, 권한 SQL 명령을 확인하는 것은 명명 된 역할처럼 수행됩니다. 원래 로그인 한 사람이었습니다.
지정된role_name필수 현재 세션 사용자가 회원 인 역할이 되십시오. (만약 세션 사용자는 슈퍼업자이며 모든 역할을 선택할 수 있습니다.)
세션and로컬수정자는 일반과 동일하게 행동합니다사설 토토 : 문서 : 9.2 : set명령.
the없음andReset양식은 현재 사용자 식별자를 재설정합니다 현재 세션 사용자 식별자가 되십시오. 이 형태는 될 수 있습니다 모든 사용자가 실행.
이 명령을 사용하면 권한을 추가하거나 자신의 특권을 제한합니다. 세션 사용자 역할에가있는 경우상속속성, 그런 다음 자동으로 모든 역할의 모든 권한이 있습니다.역할 토토 결과to; 이 경우역할 토토 결과모든 권한을 효과적으로 삭제합니다 세션 사용자와 다른 역할에 직접 할당 회원이며 명명 된 역할. 반면, 세션 사용자 역할에가있는 경우noinherits속성,역할 토토 결과직접 할당 된 권한을 삭제합니다 세션 사용자와 대신 사용 가능한 권한을 획득합니다. 명명 된 역할.
특히 슈퍼업자가 선택한 경우역할 토토 결과비 슈퍼 라이저 역할을 맡게, 그녀는 그녀를 잃습니다 슈퍼 유스어 특권.
역할 토토 결과와 비슷한 효과가 있습니다PostgreSQL : 문서그러나 관련된 권한 수표는 꽤 있습니다 다른. 또한,세션 설정 권한 부여나중에 허용 할 수있는 역할을 결정합니다역할 토토 결과명령, 그리고 변경 와의 역할역할 토토 결과나중에 허용되는 역할 세트세트 역할.
역할 토토 결과세션을 처리하지 않습니다 역할에 의해 지정된 변수ALTER 역할토토 결과; 이것은 만 발생합니다 로그인하는 동안.
역할 토토 결과a 내에서 사용할 수 없습니다.Security Definer기능.
SELECT SESSION_USER, current_user; Session_USER | current_user --------------+-------------- 피터 | 베드로 역할 'Paul'을 토토 결과하십시오. Select Session_user, current_user; Session_USER | current_user --------------+-------------- 피터 | 폴