Kategorien:

Kontextfunktionen (Allgemein)

SYS_CONTEXT

Gibt Informationen zu dem Kontext zurück, in dem die Funktion aufgerufen wird.

Siehe auch:

SYS_CONTEXT (SNOWFLAKE$APPLICATION-Namespace), SYS_CONTEXT (SNOWFLAKE$ENVIRONMENT-Namespace), SYS_CONTEXT (SNOWFLAKE$ORGANIZATION-Namespace), SYS_CONTEXT (SNOWFLAKE$ORGANIZATION_SESSION-Namespace), SYS_CONTEXT (SNOWFLAKE$SESSION-Namespace)

Syntax

Syntax für das Abrufen von Eigenschaften:

SYS_CONTEXT(
  '<namespace>' ,
  '<property>'
)
Copy

Syntax für den Aufruf von Funktionen:

SYS_CONTEXT(
  '<namespace>' ,
  '<function>' , '<argument>' [ , ... ]
)
Copy

Argumente

'namespace'

Namespace der Eigenschaft, die Sie abrufen möchten, oder der Funktion, die Sie aufrufen möchten. Sie können eine der folgenden Namespaces angeben:

Namespace

Beschreibung

SNOWFLAKE$APPLICATION

Eigenschaften und Funktionen, die Kontext für die Anwendung bereitstellen, in der die Funktion aufgerufen wird.

SNOWFLAKE$ENVIRONMENT

Eigenschaften, die Kontext für die Umgebung bereitstellen, in der die Funktion aufgerufen wird. Diese Eigenschaften enthalten folgende Informationen:

  • Den Client, Treiber oder die Bibliothek, die zum Aufrufen der Funktion verwendet werden.

  • Das Konto, das mit der Sitzung verbunden ist, in der die Funktion aufgerufen wird.

  • Die Region dieses Kontos.

SNOWFLAKE$ORGANIZATION

Funktionen, die Kontext zur aktuellen Organisation bereitstellen.

SNOWFLAKE$ORGANIZATION_SESSION

Eigenschaften, die Kontext für die Sitzung bereitstellen, in der die Funktion aufgerufen wird, wenn sich das aktuelle Konto in einer Organisation befindet.

SNOWFLAKE$SESSION

Eigenschaften und Funktionen, die Kontext für die Sitzung bereitstellen, in der die Funktion aufgerufen wird.

'property'

Name der Eigenschaft, die Sie abrufen möchten. Die Eigenschaften, die Sie angeben können, hängen vom Namespace ab. Eine Liste der Eigenschaften, die Sie angeben können, finden Sie in der Dokumentation für einen Namespace.

'function'

Name der Funktion, die Sie aufrufen möchten. Die Funktionen, die Sie aufrufen können, hängen vom Namespace ab. Eine Liste der Funktionen, die Sie aufrufen können, finden Sie in der Dokumentation für einen Namespace.

'argument' [ , ... ]

Argumente, die an die Funktion übergeben werden, die Sie aufrufen möchten.

Rückgabewerte

Die Funktion gibt einen VARCHAR-Wert oder NULL zurück.

  • Der Rückgabewert hängt von der Eigenschaft ab, die Sie abrufen, oder von der Funktion, die Sie aufrufen.

    Informationen zu den Eigenschaften und Rückgabewerten von Funktionen in den einzelnen Namespaces finden Sie in der Dokumentation für den jeweiligen Namespace.

  • Die Funktion gibt NULL in den folgenden Fällen zurück:

    • Der Namespace ist im Kontext des Funktionsaufrufs nicht zugänglich. Der Versuch, auf Eigenschaften im SNOWFLAKE$APPLICATION-Namespace zuzugreifen, gibt beispielsweise NULL zurück, wenn Sie die Funktion außerhalb des Anwendungscodes aufrufen.

    • Der Wert der Eigenschaft oder der Rückgabewert des Funktionsaufrufs ist NULL oder nicht vorhanden.

Einige Eigenschaften und Funktionen geben boolesche Werte als Zeichenfolge TRUE oder FALSE zurück. Zum Vergleich dieses Rückgabewerts mit dem BOOLEAN-Wert TRUE oder FALSE müssen Sie den Rückgabewert in BOOLEAN umwandeln. Beispiel:

SELECT SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'MY_CUSTOM_ROLE')::BOOLEAN = TRUE;
Copy
+-----------------------------------------------------------------------------------------+
| SYS_CONTEXT('SNOWFLAKE$SESSION', 'IS_ROLE_ACTIVATED', 'MY_CUSTOM_ROLE')::BOOLEAN = TRUE |
|-----------------------------------------------------------------------------------------|
| True                                                                                    |
+-----------------------------------------------------------------------------------------+

Anforderungen an die Zugriffssteuerung

Informationen zu den Zugriffssteuerungsanforderungen für die Eigenschaften und Funktionen in den einzelnen Namespaces finden Sie in der Dokumentation für den jeweiligen Namespace.

Nutzungshinweise

Nutzungshinweise für die Eigenschaften und Funktionen in den einzelnen Namespaces finden Sie in der Dokumentation für den jeweiligen Namespace.

Beispiele

Beispiele zum Abrufen der Eigenschaften und Aufrufen von Funktionen in den einzelnen Namespaces finden Sie in der Dokumentation für den jeweiligen Namespace.