SYS_CONTEXT-Funktion Oracle/PLSQL

In diesem Oracle-Lernprogramm wird erläutert, wie Sie die Oracle/PLSQL SYS_CONTEXT-Funktion mit Syntax und Beispielen verwenden.

Beschreibung

Die Oracle/PLSQL-Funktion SYS_CONTEXT kann verwendet werden, um Informationen zur Oracle-Umgebung abzurufen.

Syntax

Die Syntax für die SYS_CONTEXT-Funktion in Oracle/PLSQL lautet:

SYS_CONTEXT( namespace, parameter, [ length ] )

Parameter oder Argumente

namespace Ein Oracle-Namespace, der bereits erstellt wurde. Wenn der Namespace von ‚USERENV‘ verwendet wird, können Attribute zurückgegeben werden, die die aktuelle Oracle-Sitzung beschreiben.

parameter Ein gültiges Attribut, das mit der Prozedur DBMS_SESSION.set_context festgelegt wurde.

length Wahlweise. Es ist die Länge des Rückgabewerts in Bytes. Wenn dieser Parameter nicht angegeben wird oder ein ungültiger Eintrag angegeben wird, wird die sys_context-Funktion standardmäßig auf 256 Byte gesetzt.

Notiz

  • Die SYS_CONTEXT-Funktion gibt einen Zeichenfolgenwert zurück.
  • Die gültigen Parameter für den Namespace ‚USERENV‘ lauten wie folgt: (Beachten Sie, dass nicht alle Parameter in allen Oracle-Versionen gültig sind).
Parameter Explanation Oracle 9i Oracle 10g Oracle 11g
ACTION Retuoren die Position im Modul No Yes Yes
AUDITED_CURSORID Retuoren die Cursor-ID der SQL zurück, die die Prüfung ausgelöst hat Yes Yes Yes
AUTHENTICATED_IDENTITY Retuoren die bei der Authentifizierung verwendete Identität zurück No Yes Yes
AUTHENTICATION_DATA Authentifizierungsdaten Yes Yes Yes
AUTHENTICATION_METHOD Retuoren die Authentifizierungsmethode zurück No Yes Yes
AUTHENTICATION_TYPE Beschreibt, wie der Benutzer authentifiziert wurde. Kann einer der folgenden Werte sein: Datenbank, Betriebssystem, Netzwerk oder Proxy Yes No No
BG_JOB_ID Wenn die Sitzung von einem Oracle-Hintergrundprozess eingerichtet wurde, gibt dieser Parameter die Job-ID zurück. Andernfalls wird NULL zurückgegeben. Yes Yes Yes
CLIENT_IDENTIFIER Retuoren die Clientkennung (globaler Kontext) zurück. Yes Yes Yes
CLIENT_INFO Informationen zur Benutzersitzung Yes Yes Yes
CURRENT_BIND Binden Sie Variablen für eine differenzierte Prüfung No Yes Yes
CURRENT_SCHEMA Retuoren das Standardschema zurück, das im aktuellen Schema verwendet wird Yes Yes Yes
CURRENT_SCHEMAID Retuoren den Bezeichner des Standardschemas zurück, das im aktuellen Schema verwendet wird Yes Yes Yes
CURRENT_SQL Retuoren die SQL zurück, die das Prüfereignis ausgelöst hat Yes Yes Yes
CURRENT_SQL_LENGTH Retuoren die Länge der aktuellen SQL-Anweisung zurück, die das Prüfereignis ausgelöst hat No Yes Yes
CURRENT_USER Name des aktuellen Benutzers Yes No No
CURRENT_USERID Userid des aktuellen Benutzers Yes No No
DB_DOMAIN Domäne der Datenbank aus dem Initialisierungsparameter DB_DOMAIN Yes Yes Yes
DB_NAME Name der Datenbank aus dem Initialisierungsparameter DB_NAME Yes Yes Yes
DB_UNIQUE_NAME Name der Datenbank aus dem Initialisierungsparameter DB_UNIQUE_NAME No Yes Yes
ENTRYID Verfügbare Kennung für Überwachungseinträge Yes Yes Yes
ENTERPRISE_IDENTITY Retuoren die unternehmensweite Identität des Benutzers zurück No Yes Yes
EXTERNAL_NAME Extern des Datenbankbenutzers Yes No No
FG_JOB_ID Wenn die Sitzung von einem Client-Vordergrundprozess eingerichtet wurde, gibt dieser Parameter die Job-ID zurück. Andernfalls wird NULL zurückgegeben. Yes Yes Yes
GLOBAL_CONTEXT_MEMORY Die Nummer, die im globalen Systembereich vom global aufgerufenen Kontext verwendet wird Yes Yes Yes
GLOBAL_UID Die globale Benutzer-ID aus Oracle Internet Directory für Enterprise-Sicherheitsanmeldungen. Gibt NULL für alle anderen Anmeldungen zurück. No No Yes
HOST Name der Hostmaschine, von der aus der Client eine Verbindung hergestellt hat Yes Yes Yes
IDENTIFICATION_TYPE Retuoren die Art zurück, wie das Benutzerschema erstellt wurde No Yes Yes
INSTANCE Die Identifizierungsnummer der aktuellen Instanz Yes Yes Yes
INSTANCE_NAME Der Name der aktuellen Instanz No Yes Yes
IP_ADDRESS IP-Adresse des Rechners, von dem aus der Client eine Verbindung hergestellt hat Yes Yes Yes
ISDBA Retuoren TRUE zurück, wenn der Benutzer DBA-Berechtigungen hat. Andernfalls wird FALSE zurückgegeben. Yes Yes Yes
LANG Die ISO-Abkürzung für die Sprache Yes Yes Yes
LANGUAGE Sprache, Gebiet und Charakter der Sitzung. Im folgenden Format: language_territory.characterset Yes Yes Yes
MODULE Retuoren den Anwendungsnamen zurück, der über das Paket DBMS_APPLICATION_INFO oder OCI festgelegt wurde No Yes Yes
NETWORK_PROTOCOL Netzwerkprotokoll verwendet Yes Yes Yes
NLS_CALENDAR Der Kalender der aktuellen Sitzung Yes Yes Yes
NLS_CURRENCY Die Währung der aktuellen Sitzung Yes Yes Yes
NLS_DATE_FORMAT Das Datumsformat für die aktuelle Sitzung Yes Yes Yes
NLS_DATE_LANGUAGE Die Sprache für Datumsangaben Yes Yes Yes
NLS_SORT BINARY oder die linguistische Sortierbasis Yes Yes Yes
NLS_TERRITORY Das Gebiet der aktuellen Sitzung Yes Yes Yes
OS_USER Der Benutzername des Betriebssystems für den angemeldeten Benutzer Yes Yes Yes
POLICY_INVOKER Der Aufrufer der Sicherheitsrichtlinienfunktionen auf Zeilenebene No Yes Yes
PROXY_ENTERPRISE_IDENTITY Der Oracle Internet Directory-DN, wenn der Proxy-Benutzer ein Unternehmensbenutzer ist No Yes Yes
PROXY_GLOBAL_UID Die globale Benutzer-ID aus Oracle Internet Directory für Benutzer der Sicherheits-Proxy-Benutzer von Unternehmen. Gibt NULL für alle anderen Proxy-Benutzer zurück. No Yes Yes
PROXY_USER Der Name des Benutzers, der die aktuelle Sitzung für SESSION_USER geöffnet hat Yes Yes Yes
PROXY_USERID Die Kennung des Benutzers, der die aktuelle Sitzung im Auftrag von SESSION_USER geöffnet hat Yes Yes Yes
SERVER_HOST Der Hostname der Maschine, auf der die Instanz ausgeführt wird No Yes Yes
SERVICE_NAME Der Name des Dienstes, mit dem die Sitzung verbunden ist No Yes Yes
SESSION_USER Der Datenbank-Benutzername des angemeldeten Benutzers Yes Yes Yes
SESSION_USERID Die Datenbankkennung des angemeldeten Benutzers Yes Yes Yes
SESSIONID Die Kennung der Überwachungssitzung Yes Yes Yes
SID Sitzungsnummer No Yes Yes
STATEMENTID Die Prüfanweisungskennung No Yes Yes
TERMINAL Die Betriebssystemkennung der aktuellen Sitzung Yes Yes Yes

Gilt für

Die SYS_CONTEXT-Funktion kann in den folgenden Versionen von Oracle/PLSQL verwendet werden:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Beispiel

Schauen wir uns einige Oracle SYS_CONTEXT-Funktionsbeispiele an und untersuchen, wie Sie die SYS_CONTEXT-Funktion in Oracle/PLSQL verwenden.

Zum Beispiel: