Oracle Database
Skapa en kontext
Sök…
Syntax
- SKAPA [ELLER Byt ut] CONTEXT-namnutrymmet ANVÄNDA [schema.] -Paketet;
- SKAPA [ELLER Byt ut] KONTEXT namnutrymme ANVÄNDNING av [schema.] -Paket INITIALISERAD EXTERNT;
- SKAPA [ELLER Byt ut] KONTEXT namnutrymme med hjälp av [schema.] -Paket INITIALISERAD GLOBALLT;
- SKAPA [ELLER Byt ut] KONTEXT namnutrymme ANVÄNDNING av [schema.] -Paket TILLGÄNGD GLOBALT;
parametrar
Parameter | detaljer |
---|---|
OR REPLACE | Omdefiniera ett befintligt sammanhangsnamnområde |
namnutrymme | Kontextens namn - detta är namnområdet för samtal till SYS_CONTEXT |
schema | Paketets ägare |
paket | Databaspaket som anger eller återställer kontextattributen. Obs: databaspaketet behöver inte existera för att skapa kontext. |
INITIALIZED | Ange en annan enhet än Oracle-databas som kan ställa in sammanhanget. |
EXTERNALLY | Låt OCI-gränssnittet initialisera kontexten. |
GLOBALLY | Låt LDAP-katalogen initiera sammanhanget när sessionen skapas. |
ACCESSED GLOBALLY | Låt sammanhanget vara tillgängligt i hela instansen - flera sessioner kan dela attributvärdena så länge de har samma klient-ID. |
Anmärkningar
Oracle-dokumentation (12cR1): http://docs.oracle.com/database/121/SQLRF/statements_5003.htm
Skapa en kontext
CREATE CONTEXT my_ctx USING my_pkg;
Detta skapar en kontext som bara kan ställas in av rutiner i databaspaketet my_pkg
, t.ex.
CREATE PACKAGE my_pkg AS
PROCEDURE set_ctx;
END my_pkg;
CREATE PACKAGE BODY my_pkg AS
PROCEDURE set_ctx IS
BEGIN
DBMS_SESSION.set_context('MY_CTX','THE KEY','Value');
DBMS_SESSION.set_context('MY_CTX','ANOTHER','Bla');
END set_ctx;
END my_pkg;
Om en session gör detta:
my_pkg.set_ctx;
Det kan nu hämta värdet för nyckeln på så sätt:
SELECT SYS_CONTEXT('MY_CTX','THE KEY') FROM dual;
Value
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow