Parametri di inizializzazione

Autonomous Database configura automaticamente i parametri di inizializzazione del database quando si esegue il provisioning di un database. Non è necessario impostare parametri 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.

Modificabile solo con ALTER SESSION Ulteriori informazioni
CONSTRAINTS  
CONTAINER  
CURRENT_SCHEMA  
CURSOR_INVALIDATION CURSOR_INVALIDATION
DEFAULT_COLLATION  
DEFAULT_CREDENTIAL  
EDITION  
ISOLATION_LEVEL  
JSON_BEHAVIOR

Questo parametro è applicabile solo a Oracle Database 23ai. Per ulteriori informazioni, 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, vedere Esegui SQL Tracing su Autonomous Database

SQL_TRANSLATION_PROFILE  
SQL_TRANSPILER

Questo parametro è applicabile solo a Oracle Database 23ai. Per ulteriori informazioni, 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 a Oracle Database 23ai. Per ulteriori informazioni, vedere XML_PARAMS.

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

Modificabile solo con ALTER SYSTEM Ulteriori informazioni
BLANK_TRIMMING BLANK_TRIMMING
FIXED_DATE FIXED_DATE
JOB_QUEUE_PROCESSES JOB_QUEUE_PROCESSES
LOCKDOWN_ERRORS

Per informazioni dettagliate, 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 a 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 i dettagli, 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'ottimizzatore su Autonomous Database.

OPTIMIZER_IGNORE_PARALLEL_HINTS

Per ulteriori informazioni su OPTIMIZER_IGNORE_PARALLEL_HINTS, vedere Gestire le statistiche dell'ottimizzatore 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.

Property Descrizione
Tipo di parametro Boolean
Valore predefinito FALSE
Modificabile ALTER SYSTEM
Intervallo di valore TRUE | FALSE

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

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 l'errore ORA-4068 quando lo stato del pacchetto viene eliminato, la sessione esce immediatamente. Questo 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 la gestione speciale in una sessione per il valore di data e ora restituito nelle chiamate a SYSDATE e SYSTIMESTAMP.

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

Property Descrizione
Tipo di parametro Boolean
Valore predefinito FALSE
Modificabile ALTER SESSION, ALTER SYSTEM
Intervallo di valore 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 verso SYSDATE e SYSTIMESTAMP restituiscono la data e l'ora in UTC.

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

Questo esempio imposta il fuso orario del database 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

Per rendere effettiva la modifica, è 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'uso della clausola SET TIME_ZONE con ALTER DATABASE, vedere Impostazione del fuso orario del database in Oracle Database 19c o Oracle Database 23ai.

Uso di SYSDATE_AT_DBTIMEZONE in una sessione

Quando SYSDATE_AT_DBTIMEZONE è FALSE in una sessione, le chiamate a SYSDATE e SYSTIMESTAMP restituiscono valori basati sul 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 influisce solo sull'uso di SYSDATE e SYSTIMESTAMP come operatori nelle istruzioni SQL dell'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 una query SYSDATE o SYSTIMESTAMP viene eseguita nel foglio di lavoro SQL di Database Actions, il valore di data e ora restituito si trova in UTC (quando il parametro SYSDATE_AT_DBTIMEZONE è impostato su TRUE o FALSE). Per ottenere il fuso orario del database quando si utilizza 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 richiesti 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 modifiche all'applicazione client. Il driver client esegue il buffer delle righe preimpostate dopo ogni esecuzione della 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 versione successiva) e 21.8 (o versione successiva) per tutte le piattaforme.

Property Descrizione
Tipo di parametro Numero intero
Sintassi CLIENT_PREFETCH_ROWS = integer
Valore predefinito 0 (si applicano solo le impostazioni lato client)
Modificabile ALTER SYSTEM, ALTER SESSION
Intervallo di valore Da 0 a UB4MAXVAL (4294967295)
Base N

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 nei successivi recuperi dei risultati. Se il valore del parametro viene modificato 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, il driver client restituirà un totale di 110 righe. Le prime 10 righe delle 110 righe vengono assegnate all'applicazione e il driver client esegue il buffer interno delle restanti 100 righe. Le successive 10 righe recuperate dall'applicazione client, ciascuna con 10 righe per iterazione di recupero, possono essere evase dalle 100 righe inserite nel buffer interno dal driver client. Questo processo riduce il numero di roundtrip di rete richiesti da e verso il database. In questo esempio, all'11° richiamo, si verifica un nuovo roundtrip di rete e il database restituisce il batch successivo di 110 righe, purché il set di risultati non sia esaurito e il ciclo si ripeta.

Note per l'impostazione di CLIENT_PREFETCH_ROWS:

  • Se 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.

  • Utilizzo di CLIENT_PREFETCH_ROWS con OCIAttrSet():

    OCI_ATTR_PREFETCH_ROWS imposta il numero di righe di livello superiore da preimpostare. Il valore predefinito è 1 riga. Tuttavia, se CLIENT_PREFETCH_ROWS è impostato, il numero di righe di livello superiore da preimpostare è determinato dalla precedenza seguente:

    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 primo livello '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.

  • Utilizzo di 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 il 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 finale delle righe di recupero preliminare 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 non forniti da Oracle.

Property Descrizione
Tipo di parametro Numero intero
Sintassi JOB_QUEUE_PROCESSES = integer
Valore predefinito

Il valore predefinito dipende dal conteggio ECPU (conteggio OCIPU se il database utilizza le OCPU) e dall'impostazione per Scalabilità automatica ECPU (Scalabilità automatica OCI se il database utilizza le OCPU). Per informazioni dettagliate, fare riferimento alla tabella riportata di seguito.

Modificabile ALTER SYSTEM
Intervallo di valore

Valore minimo: 0

Il valore massimo dipende dal conteggio ECPU (conteggio OCIPU se il database utilizza le OCPU) e dall'impostazione per Scalabilità automatica ECPU (Scalabilità automatica OCI se il database utilizza le OCPU, come mostrato 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 calcolo 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 job 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 ottimizzato automaticamente 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 per JOB_QUEUE_PROCESSES garantisce una compromissione della 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.

Se si imposta il valore JOB_QUEUE_PROCESSES su 0, i processi Scheduler non forniti da Oracle verranno disabilitati. Se JOB_QUEUE_PROCESSES è impostato su 0, non disabilita alcun job interno per gli utenti forniti da Oracle (i job correlati al servizio eseguiti dagli utenti forniti da Oracle continuano ad essere pianificati).

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

Per ulteriori informazioni, 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 profili di blocco 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 blocco di Autonomous Database. Il parametro LOCKDOWN_ERRORS consente di eliminare gli errori del profilo di blocco. Inoltre, quando LOCKDOWN_ERRORS è impostato sul valore IGNORE, quando si ignora un errore il database registra i dettagli relativi all'istruzione SQL, all'utente e all'indicatore orario del comando.

Nota

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

È possibile utilizzare la vista DBA_LOCKDOWN_ERRORS per ottenere informazioni sugli errori dei profili di blocco. Per ulteriori informazioni, vedere Visualizzazione errori di blocco.

Property Descrizione
Tipo di parametro Stringa
Sintassi LOCKDOWN_ERRORS = IGNORE | RAISE
Valore predefinito

Il valore predefinito è RAISE.

Modificabile ALTER SYSTEM
Valori validi

RAISE: genera gli 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 utilizzando possibili costrutti non deterministici come candidati per l'inserimento dei risultati nella cache.

Property 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 possono essere inseriti nella cache dei risultati. 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 come deterministiche, i risultati della 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 utilizzando costrutti possibilmente non deterministici come candidati per l'inserimento dei risultati nella cache. Ad esempio, è possibile inserire nella cache le query che utilizzano funzioni PL/SQL non dichiarate come deterministiche. Si noti, tuttavia, che i risultati notoriamente 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 le query idonee a memorizzare i set di risultati nella cache dei risultati. Solo i piani di esecuzione delle query con l'operatore della 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 Transaction Processing, JSON o APEX: MANUAL

Modificabile ALTER SESSION, ALTER SYSTEM

Per ulteriori informazioni, vedere RESULT_CACHE_MODE.

Uso dei suggerimenti della cache dei risultati SQL

Utilizzare i suggerimenti della cache dei risultati a livello di applicazione per controllare il funzionamento della cache. I suggerimenti della cache dei risultati SQL hanno la precedenza sulla modalità cache dei risultati e sulle annotazioni della tabella 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 nella cache i risultati nelle cache dei risultati del server o del client.

Per ulteriori informazioni, vedere Uso 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 viene specificato il suggerimento. Se il suggerimento viene specificato solo in una vista, vengono inseriti nella cache solo i risultati.

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