- Catégories :
Fonctions contextuelles (général)
SYS_CONTEXT (espace de noms SNOWFLAKE$SESSION_ATTRIBUTES)¶
Renvoie un attribut de session personnalisé défini à l’aide de SET_SYS_CONTEXT dans l’espace de noms SNOWFLAKE$SESSION_ATTRIBUTES.
Les attributs de session personnalisés sont immuables une fois définis et persistent pendant la durée de la session. Ils sont utiles pour suivre les métadonnées d’une session, telles que le contexte de l’application, les attributs de l’utilisateur ou les informations d’audit.
- Voir aussi :
Syntaxe¶
Arguments¶
'SNOWFLAKE$SESSION_ATTRIBUTES'Spécifie que vous souhaitez récupérer un attribut de session personnalisé.
'key'Le nom de l’attribut personnalisé à récupérer. Les noms d’attributs sont sensibles à la casse.
Renvoie¶
La fonction renvoie une valeur VARCHAR :
La valeur de l’attribut spécifié s’il a été défini dans la session en cours à l’aide de SET_SYS_CONTEXT.
NULL si l’attribut n’a pas été défini.
Exigences en matière de contrôle d’accès¶
Aucun privilège particulier n’est requis pour récupérer des attributs de session personnalisés. Tout utilisateur peut récupérer des attributs à partir de sa propre session.
Notes sur l’utilisation¶
Les attributs doivent être définis à l’aide de SET_SYS_CONTEXT avant de pouvoir les récupérer.
Les noms d’attributs sont sensibles à la casse.
app_contextetAPP_CONTEXTsont traités comme des attributs différents.Les attributs sont limités à la session et ne sont pas visibles par les autres sessions.
Si vous spécifiez l’appel de fonction dans une chaîne entre guillemets doubles dans un shell, isolez le caractère
$avec une barre oblique inverse (\) de sorte que$session_attributesne soit pas interprété comme une variable de shell.
Exemples¶
L’exemple suivant définit un attribut personnalisé, puis le récupère :
La récupération d’un attribut qui n’a pas été défini renvoie NULL :
Les noms d’attributs sont sensibles à la casse :