カテゴリ:

コンテキスト関数 (一般)

IS_ROLE_ACTIVATED(SYS_CONTEXT 関数)

アカウントロールが現在のセッションでアクティブ化されている場合は VARCHAR 値 'TRUE' を返します。

こちらもご参照ください。

SYS_CONTEXT(SNOWFLAKE$SESSION 名前空間)

構文

SYS_CONTEXT(
  'SNOWFLAKE$SESSION' ,
  'IS_ROLE_ACTIVATED' ,
  '<role>'
)
Copy

引数

'SNOWFLAKE$SESSION'

現在のセッションに関するコンテキスト情報を返す関数を呼び出すことを指定します。

'IS_ROLE_ACTIVATED'

IS_ROLE_ACTIVATED 関数を呼び出します。

'role'

チェックするアカウントロールを指定します。

戻り値

この関数は、次の VARCHAR 値のいずれかを返します。

  • アカウントロールが現在のセッションでアクティブ化されている場合は 'TRUE'

  • アカウントロールがアクティブ化されていないか、アカウントロールが有効でない場合は 'FALSE'

この戻り値を BOOLEAN 値 TRUE または FALSE と比較するには、BOOLEAN への戻り値を:ref:キャストします <label-data_type_explicit_casting>。例:

SELECT SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'my_role')::BOOLEAN = TRUE;
Copy

使用上の注意

ロール my_role がセッションのプライマリロールまたはセカンダリロールのロール階層にある場合、次の例では 'TRUE' を返します。

SELECT SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'my_role');
Copy