Oracle Database                
            Creare un contesto
        
        
            
    Ricerca…
Sintassi
- CREA lo spazio dei nomi [O REPLACE] CONTESTUO UTILIZZANDO il pacchetto [schema.];
- CREATE [O REPLACE] namespace CONTEXT UTILIZZO del pacchetto [schema.] INIZIALIZZATO ESTERNAMENTE;
- CREATE [O REPLACE] namespace CONTEXT UTILIZZO del pacchetto [schema.] INIZIALIZZATO GLOBALMENTE;
- CREATE [O REPLACE] namespace CONTEXT UTILIZZO del pacchetto [schema.] ACCESSED GLOBALLY;
Parametri
| Parametro | Dettagli | 
|---|---|
| OR REPLACE | Ridefinire uno spazio dei nomi di contesto esistente | 
| namespace | Nome del contesto: questo è lo spazio dei nomi per le chiamate a SYS_CONTEXT | 
| schema | Proprietario del pacchetto | 
| pacchetto | Pacchetto di database che imposta o reimposta gli attributi di contesto. Nota: il pacchetto database non deve esistere per creare il contesto. | 
| INITIALIZED | Specificare un'entità diversa dal Database Oracle che può impostare il contesto. | 
| EXTERNALLY | Consentire all'interfaccia OCI di inizializzare il contesto. | 
| GLOBALLY | Consentire alla directory LDAP di inizializzare il contesto quando si stabilisce la sessione. | 
| ACCESSED GLOBALLY | Consentire al contesto di essere accessibile attraverso l'intera istanza: più sessioni possono condividere i valori degli attributi purché abbiano lo stesso ID client. | 
Osservazioni
Documentazione Oracle (12cR1): http://docs.oracle.com/database/121/SQLRF/statements_5003.htm
Crea un contesto
CREATE CONTEXT my_ctx USING my_pkg;
 Questo crea un contesto che può essere impostato solo da routine nel pacchetto database my_pkg , ad esempio: 
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;
Ora, se una sessione fa questo:
my_pkg.set_ctx;
Ora può recuperare il valore per la chiave in questo modo:
SELECT SYS_CONTEXT('MY_CTX','THE KEY') FROM dual;
Value
Modified text is an extract of the original Stack Overflow Documentation
        Autorizzato sotto CC BY-SA 3.0
        Non affiliato con Stack Overflow