Parametri di inizializzazione

Autonomous Database configura automaticamente i parametri di inizializzazione del database quando viene eseguito il provisioning di un database. Non è necessario impostare alcun parametro di inizializzazione per iniziare a utilizzare il servizio. Tuttavia, è possibile modificare alcuni parametri, se necessario.

Parametri di inizializzazione modificabili

La tabella seguente mostra i parametri di inizializzazione modificabili solo con ALTER SESSION.

Solo modificabile con SESSIONE ALTER Ulteriori informazioni
CONSTRAINTS  
CONTAINER  
CURRENT_SCHEMA  
CURSOR_INVALIDATION CURSOR_INVALIDATION
DEFAULT_COLLATION  
DEFAULT_CREDENTIAL  
EDITION  
ISOLATION_LEVEL  
JSON_BEHAVIOR

Questo parametro è applicabile solo con Oracle Database 23ai. Vedere JSON_BEHAVIOR.

JSON_EXPRESSION_CHECK JSON_EXPRESSION_CHECK
OPTIMIZER_SESSION_TYPE

OPTIMIZER_SESSION_TYPE

OPTIMIZER_USE_INVISIBLE_INDEXES

OPTIMIZER_USE_INVISIBLE_INDEXES

READ_ONLY  
SQL_TRACE

Per i dettagli, consulta la sezione relativa all'esecuzione del trace SQL su Autonomous Database

SQL_TRANSLATION_PROFILE  
SQL_TRANSPILER

Questo parametro è applicabile solo con Oracle Database 23ai. Vedere SQL_TRANSPILER.

STATISTICS_LEVEL STATISTICS_LEVEL
TIME_ZONE

Per ulteriori informazioni su TIME_ZONE, vedere Oracle Database SQL Language Reference.

XML_PARAMS

Questo parametro è applicabile solo con Oracle Database 23ai. Vedere XML_PARAMS.

La tabella seguente mostra i parametri di inizializzazione modificabili solo con ALTER SYSTEM.

Solo modificabile con ALTER SYSTEM Ulteriori informazioni
BLANK_TRIMMING BLANK_TRIMMING
FIXED_DATE FIXED_DATE
JOB_QUEUE_PROCESSES JOB_QUEUE_PROCESSES
LOCKDOWN_ERRORS

Per ulteriori informazioni, vedere LOCKDOWN_ERRORS

MAX_IDLE_BLOCKER_TIME MAX_IDLE_BLOCKER_TIME

Con un valore superiore a 5, il parametro agisce come se fosse impostato su 5

MAX_IDLE_TIME MAX_IDLE_TIME

Per impostazione predefinita, MAX_IDLE_TIME è impostato su 1440. Impostando il valore MAX_IDLE_TIME su 0 o su un valore superiore a 1440, il parametro agisce come se fosse impostato su 1440.

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

La tabella seguente mostra i parametri di inizializzazione modificabili con ALTER SESSION o ALTER SYSTEM.

Modificabile con ALTER SESSION o ALTER SYSTEM Ulteriori informazioni
APPROX_FOR_AGGREGATION APPROX_FOR_AGGREGATION
APPROX_FOR_COUNT_DISTINCT APPROX_FOR_COUNT_DISTINCT
APPROX_FOR_PERCENTILE APPROX_FOR_PERCENTILE
CLIENT_PREFETCH_ROWS

Vedere CLIENT_PREFETCH_ROWS

CONTAINER_DATA CONTAINER_DATA
CURSOR_SHARING CURSOR_SHARING
DDL_LOCK_TIMEOUT DDL_LOCK_TIMEOUT
GROUP_BY_POSITION  
GROUP_BY_POSITION_ENABLED

Questo parametro è applicabile solo con Oracle Database 23ai. Per ulteriori informazioni, vedere GROUP_BY_POSITION_ENABLED

HEAT_MAP HEAT_MAP
IGNORE_SESSION_SET_PARAM_ERRORS IGNORE_SESSION_SET_PARAM_ERRORS
LDAP_DIRECTORY_ACCESS LDAP_DIRECTORY_ACCESS
LOAD_WITHOUT_COMPILE  
MAX_STRING_SIZE

Per ulteriori informazioni, vedere Tipi di dati.

NLS_CALENDAR NLS_CALENDAR
NLS_COMP NLS_COMP
NLS_CURRENCY NLS_CURRENCY
NLS_DATE_FORMAT NLS_DATE_FORMAT
NLS_DATE_LANGUAGE NLS_DATE_LANGUAGE
NLS_DUAL_CURRENCY NLS_DUAL_CURRENCY
NLS_ISO_CURRENCY NLS_ISO_CURRENCY
NLS_LANGUAGE NLS_LANGUAGE
NLS_LENGTH_SEMANTICS NLS_LENGTH_SEMANTICS
NLS_NCHAR_CONV_EXCP NLS_NCHAR_CONV_EXCP
NLS_NUMERIC_CHARACTERS NLS_NUMERIC_CHARACTERS
NLS_SORT NLS_SORT
NLS_TERRITORY NLS_TERRITORY
NLS_TIME_FORMAT  
NLS_TIME_TZ_FORMAT  
NLS_TIMESTAMP_FORMAT NLS_TIMESTAMP_FORMAT
NLS_TIMESTAMP_TZ_FORMAT NLS_TIMESTAMP_TZ_FORMAT
OPTIMIZER_CAPTURE_SQL_QUARANTINE OPTIMIZER_CAPTURE_SQL_QUARANTINE
OPTIMIZER_IGNORE_HINTS

Per ulteriori informazioni su OPTIMIZER_IGNORE_HINTS, vedere Gestire le statistiche dell'optimizer su Autonomous Database.

OPTIMIZER_IGNORE_PARALLEL_HINTS

Per ulteriori informazioni su OPTIMIZER_IGNORE_PARALLEL_HINTS, vedere Gestire le statistiche dell'optimizer su Autonomous Database.

OPTIMIZER_MODE OPTIMIZER_MODE
OPTIMIZER_REAL_TIME_STATISTICS OPTIMIZER_REAL_TIME_STATISTICS
OPTIMIZER_USE_SQL_QUARANTINE OPTIMIZER_USE_SQL_QUARANTINE
PLSCOPE_SETTINGS PLSCOPE_SETTINGS
PLSQL_CCFLAGS PLSQL_CCFLAGS
PLSQL_DEBUG PLSQL_DEBUG
PLSQL_IMPLICIT_CONVERSION_BOOL

Questo parametro è applicabile solo a Oracle Database 23ai. Vedere PLSQL_IMPLICIT_CONVERSION_BOOL

PLSQL_OPTIMIZE_LEVEL PLSQL_OPTIMIZE_LEVEL
PLSQL_WARNINGS PLSQL_WARNINGS
QUERY_REWRITE_INTEGRITY QUERY_REWRITE_INTEGRITY
RECYCLEBIN CESTINO
REMOTE_DEPENDENCIES_MODE REMOTE_DEPENDENCIES_MODE
RESULT_CACHE_INTEGRITY

Vedere RESULT_CACHE_INTEGRITY

RESULT_CACHE_MODE

Vedere RESULT_CACHE_MODE

SKIP_UNUSABLE_INEDEXES

SKIP_UNUSABLE_INDEXES

SQL_HISTORY_ENABLED

Questo parametro è disponibile a partire da Oracle Database 23ai. Per ulteriori informazioni, vedere SQL_HISTORY_ENABLED.

SYSDATE_AT_DBTIMEZONE

Vedere SYSDATE_AT_DBTIMEZONE Selezionare un fuso orario per SYSDATE su Autonomous Database

XML_CLIENT_SIDE_DECODING

Vedere XML_CLIENT_SIDE_DECODING

Per ulteriori informazioni sui parametri di inizializzazione, vedere Oracle Database Reference.

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

SESSION_EXIT_ON_PACKAGE_STATE_ERROR abilita o disabilita la gestione speciale per i package PL/SQL con conservazione dello stato in esecuzione in una sessione.

Proprietà descrizione;
tipo di parametro Boolean
Valore predefinito FALSE
Modificabile ALTER SYSTEM
Intervallo di valori TRUE | FALSE

SESSION_EXIT_ON_PACKAGE_STATE_ERROR specifica la gestione per un package PL/SQL con conservazione dello stato in esecuzione in una sessione. Quando un pacchetto di questo tipo viene modificato, ad esempio durante la manutenzione pianificata per gli oggetti forniti da Oracle, le sessioni con un'istanza attiva del pacchetto ricevono il seguente errore quando tentano di eseguire il pacchetto:

ORA-4068 existing state of package has been discarded

Tuttavia, il codice dell'applicazione che riceve l'errore ORA-4068 potrebbe non essere in grado di gestire questo errore con la logica dei nuovi tentativi.

L'impostazione di SESSION_EXIT_ON_PACKAGE_STATE_ERROR su TRUE fornisce una gestione diversa per questo caso. Quando SESSION_EXIT_ON_PACKAGE_STATE_ERROR è TRUE, invece di generare solo l'errore ORA-4068 quando lo stato del pacchetto viene eliminato, la sessione viene chiusa immediatamente. Ciò può essere vantaggioso perché molte applicazioni sono in grado di gestire l'interruzione della sessione ristabilendo automaticamente e in modo trasparente la connessione.

SYSDATE_AT_DBTIMEZONE Selezionare un fuso orario per SYSDATE su Autonomous Database

SYSDATE_AT_DBTIMEZONE consente una gestione speciale in una sessione per il valore di data e ora restituito nelle chiamate a SYSDATE e SYSTIMESTAMP.

A seconda del valore SYSDATE_AT_DBTIMEZONE, vengono visualizzati la data e l'ora in base al fuso orario predefinito di Autonomous Database, UTC (Coordinated Universal Time) o in base al fuso orario impostato nel database.

Proprietà descrizione;
tipo di parametro Boolean
Valore predefinito FALSE
Modificabile ALTER SESSION, ALTER SYSTEM
Intervallo di valori TRUE | FALSE

Fuso orario predefinito di Autonomous Database

Il fuso orario predefinito di Autonomous Database è UTC (Coordinated Universal Time) e per impostazione predefinita le chiamate a SYSDATE e SYSTIMESTAMP restituiscono la data e l'ora in UTC.

Per modificare il fuso orario del database, è possibile eseguire la seguente istruzione.

In questo esempio il fuso orario del database viene impostato su UTC-5.

ALTER DATABASE SET TIME_ZONE='-05:00';

In questo esempio viene impostato il fuso orario del database per la costa orientale degli Stati Uniti: America/New_York e l'ora viene regolata automaticamente agli switch DST:

ALTER DATABASE SET TIME_ZONE='America/New_York';
Nota

Affinché la modifica diventi effettiva, è necessario riavviare l'istanza di Autonomous Database.

Dopo aver impostato il fuso orario del database, per impostazione predefinita SYSDATE e SYSTIMESTAMP continuano a restituire la data e l'ora in UTC (SYSDATE_AT_DBTIMEZONE è FALSE per impostazione predefinita). Se si imposta SYSDATE_AT_DBTIMEZONE su TRUE in una sessione, SYSDATE e SYSTIMESTAMP restituiscono il fuso orario del database.

Per ulteriori informazioni sull'utilizzo della clausola SET TIME_ZONE con ALTER DATABASE, vedere Impostazione del fuso orario del database in Oracle Database 19c o Oracle Database 23ai.

Utilizzo di SYSDATE_AT_DBTIMEZONE in una sessione

Quando SYSDATE_AT_DBTIMEZONE è FALSE in una sessione, chiama i valori restituiti da SYSDATE e SYSTIMESTAMP in base al fuso orario predefinito di Autonomous Database, UTC (Coordinated Universal Time).

Quando SYSDATE_AT_DBTIMEZONE è TRUE in una sessione, le chiamate a SYSDATE o SYSTIMESTAMP restituiscono la data e l'ora in base al fuso orario del database.

Nota

L'impostazione di SYSDATE_AT_DBTIMEZONE su TRUE ha effetto solo sull'uso di SYSDATE e SYSTIMESTAMP come operatori in SQL applicazione (ad esempio, nelle query, nelle operazioni DML e CTAS). Quando si utilizza questo parametro, si consiglia che il fuso orario client/sessione corrisponda al fuso orario del database.

Esempio

Nell'esempio seguente vengono restituite date e ore per due fusi orari diversi, in base al valore del parametro SYSDATE_AT_DBTIMEZONE:

SQL> SELECT DBTIMEZONE FROM DUAL;

DBTIMEZONE
_____________
-05:00

SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=FALSE;

Session altered.

SQL> SELECT SYSTIMESTAMP FROM DUAL;

SYSTIMESTAMP
______________________________________
27-JAN-22 06.59.45.708082000 PM GMT

SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=TRUE;

Session altered.

SQL> SELECT SYSTIMESTAMP FROM DUAL;

SYSTIMESTAMP
_________________________________________
27-JAN-22 02.14.47.578946000 PM -05:00 
Nota

Quando viene eseguita una query SYSDATE o SYSTIMESTAMP nel foglio di lavoro SQL di Database Actions, il valore di ora e data restituito è in UTC (quando il parametro SYSDATE_AT_DBTIMEZONE è impostato su TRUE o FALSE). Per ottenere il fuso orario del database quando si lavora in Database Actions, utilizzare TO_CHAR() come indicato di seguito.

SQL> SELECT TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SS TZH":"TZM') FROM DUAL;

TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SSTZH":"TZM')
___________________________________________________________
2022-01-27T14:15:00 -05:00

CLIENT_PREFETCH_ROWS

Impostare il parametro CLIENT_PREFETCH_ROWS per consentire ai client di ridurre il numero di roundtrip necessari durante il recupero delle righe di un set di risultati della query.

CLIENT_PREFETCH_ROWS specifica il numero di righe che devono essere preimpostate dal driver client Oracle, senza apportare alcuna modifica all'applicazione client. Il driver client esegue il buffer delle righe preimpostate dopo ogni esecuzione di query riuscita e per ogni successiva richiesta di recupero inviata al database.

Questo parametro si applica solo ai client che utilizzano Oracle Call Interface (OCI) per connettersi al database.

Questo parametro si applica solo a Oracle Instant Client/Oracle Database Client 19.17 (o versioni successive) e 21.8 (o versioni successive) per tutte le piattaforme.

Proprietà descrizione;
tipo di parametro Valore intero
Sintassi CLIENT_PREFETCH_ROWS = integer
Valore predefinito 0 (si applicano solo le impostazioni lato client)
Modificabile ALTER SYSTEM, ALTER SESSION
Intervallo di valori Da 0 a UB4MAXVAL (4294967295)
Base No

Il parametro CLIENT_PREFETCH_ROWS può essere impostato con ALTER SESSION o ALTER SYSTEM. Se il valore del parametro cambia utilizzando ALTER SESSION, il nuovo valore diventa effettivo per la sessione specifica durante i successivi recuperi del set di risultati. Se il valore del parametro cambia utilizzando ALTER SYSTEM, il nuovo valore diventa effettivo per le istruzioni eseguite sulle connessioni create dopo il comando ALTER SYSTEM.

Ad esempio, se CLIENT_PREFETCH_ROWS è impostato su 100 e un'applicazione client chiede di recuperare 10 righe, al driver client viene restituito un totale di 110 righe. Le prime 10 righe delle 110 vengono fornite all'applicazione e il driver client esegue internamente il buffer delle 100 righe rimanenti. Le 10 righe successive vengono recuperate dall'applicazione client, ognuna con 10 righe per iterazione di recupero può essere evasa dalle 100 righe inserite nel buffer interno dal driver client. Questo processo riduce il numero di roundtrip di rete necessari da e verso il database. In questo esempio, all'11° recupero, viene eseguito un nuovo roundtrip di rete e il database restituisce il batch successivo di 110 righe, a condizione che il set di risultati non sia esaurito e il ciclo si ripete.

Note per l'impostazione di CLIENT_PREFETCH_ROWS:

  • Quando CLIENT_PREFETCH_ROWS è impostato su un valore diverso da zero, il relativo valore ha la precedenza sul valore OCI_ATTR_PREFETCH_ROWS predefinito per il conteggio delle righe di recupero preliminare.

  • Se il valore OCI_ATTR_PREFETCH_ROWS è impostato su un valore non predefinito, il valore CLIENT_PREFETCH_ROWS viene ignorato per il conteggio delle righe di recupero preliminare.

  • Utilizzando CLIENT_PREFETCH_ROWS con OCIAttrSet():

    OCI_ATTR_PREFETCH_ROWS imposta il numero di righe di livello superiore da preimpostare. Il valore predefinito è 1 riga. Se tuttavia è impostato CLIENT_PREFETCH_ROWS, il numero di righe di livello superiore da preimpostare è determinato dalla seguente priorità:

    1. Se si imposta l'attributo OCI_ATTR_PREFETCH_ROWS utilizzando la funzione OCIAttrSet() o oraaccess.xml come valore '1', il valore del parametro di inizializzazione del database CLIENT_PREFETCH_ROWS ha la precedenza e determina il numero di righe di livello superiore da preimpostare.

    2. Se si imposta l'attributo OCI_ATTR_PREFETCH_ROWS utilizzando la funzione OCIAttrSet() o oraaccess.xml come valore 'x' diverso da 1, il numero di righe di livello superiore 'x' verrà preimpostato e il parametro di inizializzazione del database CLIENT_PREFETCH_ROWS verrà ignorato.

    3. Se non si imposta un valore OCI_ATTR_PREFETCH_ROWS utilizzando OCIAttrSet() o oraaccess.xml, il valore del parametro di inizializzazione del database CLIENT_PREFETCH_ROWS ha la precedenza e determina il numero di righe di livello superiore da preimpostare.

  • Utilizzando CLIENT_PREFETCH_ROWS con OCIAttrGet():

    La funzione OCIAttrGet() restituisce il valore effettivo della riga di recupero preliminare impostato da OCI_ATTR_PREFETCH_ROWS, oraaccess.xml e dal parametro di inizializzazione del database CLIENT_PREFETCH_ROWS. Se il valore OCI_ATTR_PREFETCH_MEMORY è impostato, il valore restituito da OCIAttrGet() potrebbe non essere il valore delle righe di recupero preliminare finale e potrebbe essere limitato al numero massimo di righe consentito dal valore di memoria specificato dall'attributo OCI_ATTR_PREFETCH_MEMORY.

Vedere anche:

JOB_QUEUE_PROCESSES

Impostare il parametro JOB_QUEUE_PROCESSES per specificare il numero massimo di job worker che è possibile creare per eseguire i job di Oracle Scheduler (DBMS_SCHEDULER).

L'impostazione del valore su 0 disabilita i processi Scheduler forniti da Oracle.

Proprietà descrizione;
tipo di parametro Valore intero
Sintassi JOB_QUEUE_PROCESSES = integer
Valore predefinito

Il valore predefinito dipende dal conteggio ECPU (conteggio OCPU se il database utilizza OCPU) e dall'impostazione per la ridimensionamento automatico ECPU (ridimensionamento automatico OCPU se il database utilizza OCPU). Per informazioni dettagliate, fare riferimento alla tabella riportata di seguito.

Modificabile ALTER SYSTEM
Intervallo di valori

Valore minimo:0

Il valore massimo dipende dal conteggio ECPU (conteggio OCPU se il database utilizza OCPU) e dall'impostazione per la ridimensionamento automatico ECPU (ridimensionamento automatico OCPU se il database utilizza OCPU), come illustrato nella tabella riportata di seguito.

I valori predefiniti e massimi per JOB_QUEUE_PROCESSES variano a seconda del modello di computazione utilizzato. Per ulteriori informazioni, vedere Modelli di computazione in Autonomous Database.

Modello di computazione Valore predefinito e massimo con scala automatica disabilitata Valore predefinito e massimo con scala automatica abilitata
ECPU 7,5 x conteggio ECPU 22,5 x conteggio ECPU
OCPU 30 x conteggio OCPU 90 x conteggio OCPU

Il coordinatore dei processi e i job worker di Oracle Scheduler sono controllati dal parametro JOB_QUEUE_PROCESSES. Il numero effettivo di job worker creati per i job di Oracle Scheduler viene sottoposto a tuning automatico dallo scheduler in base a diversi fattori, tra cui le risorse disponibili, le impostazioni di Resource Manager e i job attualmente in esecuzione.

Il valore predefinito di JOB_QUEUE_PROCESSES fornisce un compromesso tra la qualità del servizio per le applicazioni e un uso ragionevole delle risorse di sistema. Tuttavia, è possibile che il valore predefinito non sia adatto a tutti gli ambienti.

L'impostazione del valore JOB_QUEUE_PROCESSES su 0 disabilita i processi Scheduler forniti da Oracle. Quando JOB_QUEUE_PROCESSES è impostato su 0, non viene disabilitato alcun job interno per gli utenti forniti da Oracle (i job correlati al servizio eseguiti dagli utenti forniti da Oracle continuano a essere pianificati).

Gli utenti forniti da Oracle sono utenti contrassegnati come ORACLE_MAINTAINED con il valore Y. Gli utenti non forniti da Oracle sono utenti contrassegnati come ORACLE_MAINTAINED con valore N.

Vedere ALL_USERS.

LOCKDOWN_ERRORS

Impostare il parametro LOCKDOWN_ERRORS per controllare se gli errori del profilo di lockdown di Autonomous Database vengono generati o ignorati.

Autonomous Database utilizza i profili di lockdown per limitare determinate funzionalità e funzioni del database. Per impostazione predefinita, il database genera un errore ogni volta che si tenta di eseguire un comando SQL limitato dal profilo di lockdown di Autonomous Database. Il parametro LOCKDOWN_ERRORS consente di eliminare gli errori del profilo di blocco. Inoltre, quando LOCKDOWN_ERRORS è impostato sul valore IGNORE, dopo aver ignorato un errore, il database registra i dettagli relativi all'istruzione SQL, all'utente e all'indicatore orario per il comando.

Nota

Prima di impostare il valore di questo parametro su IGNORE, valutare attentamente gli script esistenti. Quando si imposta il valore su IGNORE, gli script esistenti utilizzati non genereranno più errori di blocco.

È possibile utilizzare la vista DBA_LOCKDOWN_ERRORS per ottenere informazioni sugli errori del profilo di blocco. Per ulteriori informazioni, vedere Vista Errori di blocco.

Proprietà descrizione;
tipo di parametro Stringa
Sintassi LOCKDOWN_ERRORS = IGNORE | RAISE
Valore predefinito

Il valore predefinito è RAISE.

Modificabile ALTER SYSTEM
Valori validi

RAISE: genera errori del profilo di blocco.

IGNORE: elimina gli errori del profilo di blocco.

RESULT_CACHE_INTEGRITY

Impostare il parametro RESULT_CACHE_INTEGRITY per specificare se la cache dei risultati considera le query che utilizzano costrutti non deterministici come candidati per l'inserimento dei risultati nella cache.

Proprietà descrizione;
tipo di parametro Stringa
Sintassi RESULT_CACHE_INTEGRITY = { ENFORCED | TRUSTED }
Valore predefinito

Per Autonomous Database il valore predefinito è: ENFORCED

Modificabile ALTER SYSTEM

Valori

  • ENFORCED: indipendentemente dall'impostazione di RESULT_CACHE_MODE o dai suggerimenti specificati, solo i costrutti deterministici sono idonei per l'inserimento dei risultati nella cache. Ad esempio, le query che utilizzano funzioni PL/SQL non dichiarate come deterministiche non vengono mai inserite nella cache (a meno che le funzioni non vengano dichiarate deterministiche, i risultati delle query con tali funzioni non verranno inseriti nella cache).

  • TRUSTED: il database rispetta l'impostazione di RESULT_CACHE_MODE e i suggerimenti specificati e prenderà in considerazione le query che utilizzano costrutti non deterministici come candidati per l'inserimento dei risultati nella cache. Ad esempio, è possibile inserire nella cache query che utilizzano funzioni PL/SQL non dichiarate come deterministiche. Si noti, tuttavia, che i risultati noti per essere non deterministici non vengono inseriti nella cache (ad esempio SYSDATE o costrutti che coinvolgono SYSDATE).

RESULT_CACHE_MODE

Impostare il parametro RESULT_CACHE_MODE per specificare quali query sono idonee per memorizzare i set di risultati nella cache dei risultati. Solo i piani di esecuzione delle query con l'operatore cache dei risultati tenteranno di leggere o scrivere nella cache dei risultati.

Property descrizione;
Tipo di parametro Stringa
Sintassi RESULT_CACHE_MODE = { MANUAL | MANUAL_TEMP | FORCE | FORCE_TEMP }
Valore predefinito

Per Autonomous Database con tipo di carico di lavoro impostato su Data Warehouse: FORCE

Per i tipi di carico di lavoro Elaborazione delle transazioni, JSON o APEX: MANUAL

Modificabile ALTER SESSION, ALTER SYSTEM

Uso dei suggerimenti della cache dei risultati SQL

Utilizzare i suggerimenti della cache dei risultati a livello di applicazione per controllare il funzionamento dell'inserimento nella cache. I suggerimenti della cache dei risultati SQL hanno la precedenza sulla modalità della cache dei risultati e sulle annotazioni della tabella della cache dei risultati.

È possibile utilizzare i suggerimenti della cache dei risultati SQL nei modi riportati di seguito.

  • Utilizzo del suggerimento RESULT_CACHE

  • Utilizzo del suggerimento NO_RESULT_CACHE

  • Utilizzo del suggerimento RESULT_CACHE nelle viste

Utilizzo del suggerimento RESULT_CACHE

Quando la modalità cache dei risultati è MANUAL, il suggerimento /*+ RESULT_CACHE */ indica al database di inserire nella cache i risultati di un blocco di query e di utilizzare i risultati inseriti nella cache nelle esecuzioni future.

Per ulteriori informazioni, vedere Utilizzo del suggerimento RESULT_CACHE e RESULT_CACHE.

Utilizzo del suggerimento NO_RESULT_CACHE

Il suggerimento /*+ NO_RESULT_CACHE */ indica al database di non inserire i risultati nella cache dei risultati del server o del client.

Per ulteriori informazioni, vedere Utilizzo del suggerimento NO_RESULT_CACHE e RESULT_CACHE.

Utilizzo del suggerimento RESULT_CACHE nelle viste

Il suggerimento RESULT_CACHE si applica solo al blocco di query in cui è specificato il suggerimento. Se il suggerimento viene specificato solo in una vista, vengono inseriti nella cache solo questi risultati.

Per ulteriori informazioni, vedere Utilizzo del suggerimento RESULT_CACHE nelle viste e RESULT_CACHE.