- カテゴリ:
コンテキスト関数 (一般)
SYS_CONTEXT¶
関数が呼び出されるコンテキストに関する情報を返します。
- こちらもご参照ください。
SYS_CONTEXT(SNOWFLAKE$APPLICATION 名前空間)、 SYS_CONTEXT(SNOWFLAKE$ENVIRONMENT 名前空間)、 SYS_CONTEXT(SNOWFLAKE$ORGANIZATION 名前空間)、 SYS_CONTEXT(SNOWFLAKE$ORGANIZATION_SESSION 名前空間)、 SYS_CONTEXT(SNOWFLAKE$SESSION 名前空間)
構文¶
プロパティを取得するための構文:
SYS_CONTEXT(
'<namespace>' ,
'<property>'
)
関数を呼び出すための構文:
SYS_CONTEXT(
'<namespace>' ,
'<function>' , '<argument>' [ , ... ]
)
引数¶
'namespace'取得するプロパティまたは呼び出す関数の名前空間。次のいずれかの名前空間を指定できます。
名前空間
説明
関数が呼び出されるアプリケーションに関するコンテキストを提供するプロパティと関数。
関数が呼び出される環境に関するコンテキストを提供するプロパティ。これらのプロパティには、次の情報が含まれます。
関数を呼び出すために使用されるクライアント、ドライバー、またはライブラリ。
関数が呼び出されるセッションに関連付けられたアカウント。
そのアカウントのリージョン。
現在の組織に関するコンテキストを提供する関数。
現在のアカウントが 組織内にある場合に、関数が呼び出されるセッションに関するコンテキストを提供するプロパティ。
関数が呼び出されるセッションに関するコンテキストを提供するプロパティと関数。
'property'取得するプロパティの名前。指定できるプロパティは、名前空間によって異なります。指定できるプロパティのリストについては、名前空間のドキュメント をご参照ください。
'function'呼び出したい関数の名前。呼び出すことができる関数は、名前空間によって異なります。呼び出せる関数のリストについては、名前空間のドキュメント をご参照ください。
'argument' [ , ... ]呼び出したい関数に渡す引数。
戻り値¶
関数は VARCHAR 値または NULL を返します。
戻り値は、取得するプロパティまたは呼び出す関数によって異なります。
その名前空間のプロパティおよび関数の戻り値については、各名前空間のドキュメント をご参照ください。
次の場合、関数は NULL を返します。
名前空間は、関数呼び出しのコンテキスト内からはアクセスできません。たとえば、アプリケーションコード外の関数を呼び出している場合、SNOWFLAKE$APPLICATION 名前空間でプロパティにアクセスしようとすると、NULL が返されます。
プロパティの値または関数呼び出しの戻り値は NULL になるか、または存在しません。
一部のプロパティと関数は、文字列 TRUE または FALSE としてブール値を返します。この戻り値を BOOLEAN 値 TRUE または FALSE と比較するには、BOOLEAN への戻り値を:ref:キャストします <label-data_type_explicit_casting>。例:
SELECT SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'MY_CUSTOM_ROLE')::BOOLEAN = TRUE;
+-----------------------------------------------------------------------------------------+
| SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'MY_CUSTOM_ROLE')::BOOLEAN = TRUE |
|-----------------------------------------------------------------------------------------|
| True |
+-----------------------------------------------------------------------------------------+
アクセス制御の要件¶
その名前空間のプロパティおよび関数のアクセス制御要件については、各名前空間のドキュメント をご参照ください。
使用上の注意¶
その名前空間のプロパティおよび関数の使用上の注意については、各名前空間のドキュメント をご参照ください。
例¶
その名前空間でのプロパティの取得および関数呼び出しの例については、各名前空間のドキュメント をご参照ください。