데이터베이스 역할: 공유에 부여할 때 업데이트된 오류 메시지¶
GRANT DATABASE ROLE … TO SHARE 명령을 사용하여 공유에 데이터베이스 역할을 부여하는 것과 관련된 오류 메시지가 변경되었습니다.
아래에 나오는 표에서 “확인”이라는 단어는 데이터베이스 역할의 소유자 역할(실행하는 역할)이 데이터베이스 역할에 부여된 오브젝트에 액세스할 적절한 권한을 가지고 있음을 의미합니다. 예를 들어, 데이터베이스 역할에 테이블에 대한 SELECT 권한과 테이블을 저장하는 데이터베이스 및 스키마에 대한 USAGE 권한이 함께 있고 소유자 역할이 데이터베이스 역할에 부여된 것과 동일한 권한을 가진 경우 소유자 역할은 테이블을 확인할 수 있습니다.
이 표에는 공유에 데이터베이스 역할을 부여할 때 대체할 수 있는 오류 메시지가 나열되어 있습니다.
동작 |
이전 |
현재 |
---|---|---|
실행하는 역할은 오브젝트를 확인할 수 있지만 공유할 수는 없습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object: SQL compilation error: A view can only be shared if it is created as a SECURE view, or marked SECURE using ALTER VIEW V SET SECURE. |
Cannot share a database role that is granted privilege ‘SELECT’ on VIEW ‘DB.SCH.V’: SQL compilation error: A view can only be shared if it is created as a SECURE view, or marked SECURE using ALTER VIEW V SET SECURE. |
데이터베이스 역할이 오브젝트를 확인할 수 없으며 오브젝트가 공유되지 않습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object. |
Cannot share a database role that is granted non-shareable privileges. Use role with MANAGE GRANTS to fix it. |
데이터베이스 역할이 공유되지 않은 삭제된 오브젝트를 확인할 수 있습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object: SQL compilation error: A view can only be shared if it is created as a SECURE view, or marked SECURE using ALTER VIEW VD SET SECURE. |
Cannot share a database role that is granted privilege ‘SELECT’ on DROPPED View ‘DB.DSCH.V’. Use roles with MANAGE GRANTS to call the CLEANUP_DATABASE_ROLE_GRANTS(‘database_role_name’, ‘share_name’) to revoke the privileges and then grant the database role to the share. |
데이터베이스 역할이 공유되지 않은 삭제된 오브젝트를 확인할 수 없습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object. |
Cannot share a database role that is granted non-shareable privileges. Use role with MANAGE GRANTS to fix it. |
또한 시스템 함수 SYSTEM$CLEANUP_DATABASE_ROLE_GRANTS 는 데이터베이스 역할이 공유되지 않은 삭제된 오브젝트를 확인할 수 있는 상황에 대처하는 데 도움이 됩니다.
아래 표에는 공유에 데이터베이스 역할을 부여하려고 할 때 제거되는 오류 메시지가 나열되어 있습니다.
동작 |
이전 오류 메시지 |
현재 결과 |
---|---|---|
데이터베이스 역할이 공유 오브젝트를 확인할 수 없습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object. |
데이터베이스 역할을 공유에 부여할 수 있습니다. Snowflake는 성공 상태 메시지를 반환합니다. |
데이터베이스 역할이 공유된 상태에서 삭제된 오브젝트를 확인할 수 없습니다. |
Cannot share a database role that is granted privilege ‘SELECT’ on ‘Table’ object. |
데이터베이스 역할을 공유에 부여할 수 있습니다. Snowflake는 성공 상태 메시지를 반환합니다. |
참조: 1220