Parâmetros de inicialização

O Autonomous Database configura os parâmetros de inicialização do banco de dados automaticamente quando você provisiona um banco de dados. Não é necessário definir nenhum parâmetro de inicialização para começar a usar seu serviço. Mas, você poderá modificar alguns parâmetros se precisar.

Parâmetros de Inicialização Modificáveis

A tabela a seguir mostra os parâmetros de inicialização que só podem ser modificados com ALTER SESSION.

Somente modificável com ALTER SESSION Mais Informações
CONSTRAINTS  
CONTAINER  
CURRENT_SCHEMA  
CURSOR_INVALIDATION CURSOR_INVALIDATION
DEFAULT_COLLATION  
DEFAULT_CREDENTIAL  
EDITION  
ISOLATION_LEVEL  
JSON_BEHAVIOR

Este parâmetro só é aplicável ao Oracle Database 23ai. Consulte JSON_BEHAVIOR para obter mais informações.

JSON_EXPRESSION_CHECK JSON_EXPRESSION_CHECK
OPTIMIZER_SESSION_TYPE

OPTIMIZER_SESSION_TYPE

OPTIMIZER_USE_INVISIBLE_INDEXES

OPTIMIZER_USE_INVISIBLE_INDEXES

READ_ONLY  
SQL_TRACE

Consulte Executar Rastreamento de SQL no Autonomous Database para obter detalhes

SQL_TRANSLATION_PROFILE  
SQL_TRANSPILER

Este parâmetro só é aplicável ao Oracle Database 23ai. Consulte SQL_TRANSPILER para obter mais informações.

STATISTICS_LEVEL STATISTICS_LEVEL
TIME_ZONE

Para obter mais informações sobre TIME_ZONE, consulte o Oracle Database SQL Language Reference.

XML_PARAMS

Este parâmetro só é aplicável ao Oracle Database 23ai. Consulte XML_PARAMS para obter mais informações.

A tabela a seguir mostra os parâmetros de inicialização que só podem ser modificados com ALTER SYSTEM.

Somente modificável com ALTER SYSTEM Mais Informações
BLANK_TRIMMING BLANK_TRIMMING
FIXED_DATE FIXED_DATE
JOB_QUEUE_PROCESSES JOB_QUEUE_PROCESSES
LOCKDOWN_ERRORS

Consulte LOCKDOWN_ERRORS para obter detalhes

MAX_IDLE_BLOCKER_TIME MAX_IDLE_BLOCKER_TIME

Com um valor maior que 5, o parâmetro age como se tivesse sido definido como 5

MAX_IDLE_TIME MAX_IDLE_TIME

Por padrão, MAX_IDLE_TIME é definido como 1440. Definindo o valor MAX_IDLE_TIME como 0 ou como um valor maior que 1440, o parâmetro age como se tivesse sido definido como 1440.

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

A tabela a seguir mostra os parâmetros de inicialização que podem ser modificados com ALTER SESSION ou ALTER SYSTEM.

Modificável com SESSÃO ALTER ou SISTEMA ALTER Mais Informações
APPROX_FOR_AGGREGATION APPROX_FOR_AGGREGATION
APPROX_FOR_COUNT_DISTINCT APPROX_FOR_COUNT_DISTINCT
APPROX_FOR_PERCENTILE APPROX_FOR_PERCENTILE
CLIENT_PREFETCH_ROWS

Consulte CLIENT_PREFETCH_ROWS

CONTAINER_DATA CONTAINER_DATA
CURSOR_SHARING CURSOR_SHARING
DDL_LOCK_TIMEOUT DDL_LOCK_TIMEOUT
GROUP_BY_POSITION  
GROUP_BY_POSITION_ENABLED

Este parâmetro só é aplicável ao Oracle Database 23ai. Consulte GROUP_BY_POSITION_ENABLED para obter mais informações.

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

Consulte Tipos de Dados para obter detalhes.

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

Para obter mais informações sobre OPTIMIZER_IGNORE_HINTS, consulte Gerenciar Estatísticas do Otimizador no Autonomous Database.

OPTIMIZER_IGNORE_PARALLEL_HINTS

Para obter mais informações sobre OPTIMIZER_IGNORE_PARALLEL_HINTS, consulte Gerenciar Estatísticas do Otimizador no 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

Esse parâmetro só é aplicável ao Oracle Database 23ai. Consulte PLSQL_IMPLICIT_CONVERSION_BOOL

PLSQL_OPTIMIZE_LEVEL PLSQL_OPTIMIZE_LEVEL
PLSQL_WARNINGS PLSQL_WARNINGS
QUERY_REWRITE_INTEGRITY QUERY_REWRITE_INTEGRITY
RECYCLEBIN LIXEIRA
REMOTE_DEPENDENCIES_MODE REMOTE_DEPENDENCIES_MODE
RESULT_CACHE_INTEGRITY

Consulte RESULT_CACHE_INTEGRITY

RESULT_CACHE_MODE

Consulte RESULT_CACHE_MODE

SKIP_UNUSABLE_INEDEXES

SKIP_UNUSABLE_INDEXES

SQL_HISTORY_ENABLED

Esse parâmetro está disponível a partir do Oracle Database 23ai. Consulte SQL_HISTORY_ENABLED para obter mais informações.

SYSDATE_AT_DBTIMEZONE

Consulte SYSDATE_AT_DBTIMEZONE Selecionar um Fuso Horário para SYSDATE no Autonomous Database

XML_CLIENT_SIDE_DECODING

Consulte XML_CLIENT_SIDE_DECODING

Para obter mais informações sobre parâmetros de inicialização, consulte Oracle Database Reference.

SESSION_EXIT_ON_PACKAGE_STATE_ERROR

SESSION_EXIT_ON_PACKAGE_STATE_ERROR ativa ou desativa o tratamento especial para pacotes PL/SQL com monitoramento de estado em execução em uma sessão.

Propriedade Descrição
Tipo de parâmetro Boolean
Valor Padrão FALSE
Modificável ALTER SYSTEM
Faixa de valores TRUE | FALSE

SESSION_EXIT_ON_PACKAGE_STATE_ERROR especifica o tratamento de um pacote PL/SQL com monitoramento de estado em execução em uma sessão. Quando esse pacote passa por modificação, como durante a manutenção planejada dos objetos fornecidos pela Oracle, as sessões que têm uma instância ativa do pacote recebem o seguinte erro quando tentam executar o pacote:

ORA-4068 existing state of package has been discarded

No entanto, o código do aplicativo que recebe o erro ORA-4068 pode não estar equipado para tratar esse erro com sua lógica de repetição.

A definição de SESSION_EXIT_ON_PACKAGE_STATE_ERROR como TRUE fornece outro tratamento para esse caso. Quando SESSION_EXIT_ON_PACKAGE_STATE_ERROR é TRUE, em vez de apenas gerar o erro ORA-4068 quando o estado do pacote é descartado, a sessão é encerrada imediatamente. Isso pode ser vantajoso porque muitos aplicativos são capazes de tratar o encerramento da sessão restabelecendo a conexão de forma automática e transparente.

SYSDATE_AT_DBTIMEZONE Selecione um Fuso Horário para SYSDATE no Autonomous Database

SYSDATE_AT_DBTIMEZONE ativa o tratamento especial em uma sessão para o valor de data e hora retornado nas chamadas para SYSDATE e SYSTIMESTAMP.

Dependendo do valor de SYSDATE_AT_DBTIMEZONE, você verá a data e a hora com base no fuso horário padrão do Autonomous Database, no Horário Universal Coordenado (UTC) ou com base no fuso horário definido no seu banco de dados.

Propriedade Descrição
Tipo de parâmetro Boolean
Valor Padrão FALSE
Modificável ALTER SESSION, ALTER SYSTEM
Faixa de valores TRUE | FALSE

Fuso Horário Padrão do Autonomous Database

O fuso horário padrão do Autonomous Database é o Horário Universal Coordenado (UTC) e, por padrão, as chamadas para SYSDATE e SYSTIMESTAMP retornam a data e a hora em UTC.

Para alterar o fuso horário do banco de dados, você pode executar a instrução a seguir.

Este exemplo define o fuso horário do banco de dados como UTC-5.

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

Este exemplo define o fuso horário do banco de dados para a costa leste dos EUA: America/New_York e a hora é ajustada automaticamente nos switches de horário de verão:

ALTER DATABASE SET TIME_ZONE='America/New_York';
Observação

Reinicie a instância do Autonomous Database para que a alteração entre em vigor.

Após a definição do fuso horário do banco de dados, por padrão, SYSDATE e SYSTIMESTAMP retornam a data e hora no UTC (SYSDATE_AT_DBTIMEZONE é FALSE por padrão). Se você definir SYSDATE_AT_DBTIMEZONE como TRUE em uma sessão, SYSDATE e SYSTIMESTAMP retornarão o fuso horário do banco de dados.

Consulte Definindo o Fuso Horário do Banco de Dados no Oracle Database 19c ou no Oracle Database 23ai para obter mais informações sobre como usar a cláusula SET TIME_ZONE com ALTER DATABASE.

Usando SYSDATE_AT_DBTIMEZONE em uma Sessão

Quando SYSDATE_AT_DBTIMEZONE é FALSE em uma sessão, as chamadas para SYSDATE e SYSTIMESTAMP retornam valores com base no fuso horário padrão do Autonomous Database, Horário Universal Coordenado (UTC).

Quando SYSDATE_AT_DBTIMEZONE é TRUE em uma sessão, as chamadas para SYSDATE ou SYSTIMESTAMP retornam a data e hora com base no fuso horário do banco de dados.

Observação

A definição de SYSDATE_AT_DBTIMEZONE como TRUE só afeta o uso de SYSDATE e SYSTIMESTAMP como operadores em SQL de aplicativo (por exemplo, nas operações de consultas, DML e CTAS). Ao usar esse parâmetro, é recomendável que o fuso horário do cliente/sessão corresponda ao fuso horário do banco de dados.

Exemplo

O seguinte exemplo retorna datas e horas para dois fusos horários diferentes, com base no valor do parâmetro 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 
Observação

Quando uma consulta SYSDATE ou SYSTIMESTAMP é executada na Planilha SQL do Database Actions, o valor de data e hora retornado fica no UTC (quando o parâmetro SYSDATE_AT_DBTIMEZONE é definido como TRUE ou FALSE). Para obter o fuso horário do banco de dados ao trabalhar no Database Actions, use TO_CHAR() da seguinte forma:

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

Defina o parâmetro CLIENT_PREFETCH_ROWS para permitir que os clientes reduzam o número de roundtrips necessários ao extrair linhas de um conjunto de resultados de consulta.

CLIENT_PREFETCH_ROWS especifica o número de linhas a serem pré-buscidas pelo driver do cliente Oracle, sem fazer alterações no aplicativo cliente. O driver do cliente armazena as linhas pré-extraídas após cada execução de consulta bem-sucedida e para cada solicitação de extração subsequente enviada ao banco de dados.

Esse parâmetro só se aplica a clientes que usam o OCI (Oracle Call Interface) para estabelecer conexão com o banco de dados.

Esse parâmetro só se aplica ao Oracle Instant Client/Oracle Database Client 19.17 (ou mais recente) e 21.8 (ou mais recente), para todas as plataformas.

Propriedade Descrição
Tipo de parâmetro Número Inteiro
Sintaxe CLIENT_PREFETCH_ROWS = integer
Valor Padrão 0 (Somente definições do cliente se aplicam)
Modificável ALTER SYSTEM, ALTER SESSION
Faixa de valores 0 a UB4MAXVAL (4294967295)
Básico No

O parâmetro CLIENT_PREFETCH_ROWS pode ser definido com ALTER SESSION ou ALTER SYSTEM. Se o valor do parâmetro for alterado usando ALTER SESSION, o novo valor se tornará efetivo para essa sessão específica em extrações subsequentes do conjunto de resultados. Se o valor do parâmetro for alterado usando ALTER SYSTEM, o novo valor terá efeito para as instruções executadas nas conexões criadas após o comando ALTER SYSTEM.

Por exemplo, se CLIENT_PREFETCH_ROWS for definido como 100 e um aplicativo cliente solicitar a extração de 10 linhas, um total de 110 linhas será retornado ao driver do cliente. As primeiras 10 linhas das 110 linhas são dadas ao aplicativo, e o driver do cliente armazena internamente as 100 linhas restantes. As próximas 10 extrações de linha do aplicativo cliente, cada uma com 10 linhas por iteração de extração, podem ser preenchidas a partir das 100 linhas que são armazenadas internamente no buffer pelo driver do cliente. Esse processo reduz o número de roundtrips de rede necessários de/para o banco de dados. Neste exemplo, na 11a extração, uma nova rota de rede é incorrida e o banco de dados retorna o próximo lote de 110 linhas, desde que o conjunto de resultados não esteja esgotado e o ciclo se repita.

Observações para definir CLIENT_PREFETCH_ROWS:

  • Quando CLIENT_PREFETCH_ROWS é definido como um valor diferente de zero, seu valor tem precedência sobre o valor OCI_ATTR_PREFETCH_ROWS padrão para a contagem de linhas de pré-busca.

  • Se o valor OCI_ATTR_PREFETCH_ROWS for definido como um valor não padrão, o valor CLIENT_PREFETCH_ROWS será ignorado para a contagem de linhas de pré-busca.

  • Usando CLIENT_PREFETCH_ROWS com OCIAttrSet():

    OCI_ATTR_PREFETCH_ROWS define o número de linhas de nível superior a serem pré-buscidas. O valor padrão é 1 linha. No entanto, se CLIENT_PREFETCH_ROWS for definido, o número de linhas de nível superior a serem pré-buscidas será determinado pela seguinte precedência:

    1. Se você definir o atributo OCI_ATTR_PREFETCH_ROWS usando a função OCIAttrSet() ou oraaccess.xml como o valor '1', o valor do parâmetro de inicialização do banco de dados CLIENT_PREFETCH_ROWS terá precedência e determinará o número de linhas de nível superior a serem pré-buscidas.

    2. Se você definir o atributo OCI_ATTR_PREFETCH_ROWS usando a função OCIAttrSet() ou oraaccess.xml como o valor 'x' diferente de 1, o número de linhas de nível superior 'x' será pré-buscado e o parâmetro de inicialização do banco de dados CLIENT_PREFETCH_ROWS será ignorado.

    3. Se você não definir um valor OCI_ATTR_PREFETCH_ROWS usando OCIAttrSet() ou oraaccess.xml, o valor do parâmetro de inicialização do banco de dados CLIENT_PREFETCH_ROWS terá precedência e determinará o número de linhas de nível superior a serem pré-buscidas.

  • Usando CLIENT_PREFETCH_ROWS com OCIAttrGet():

    A função OCIAttrGet() retorna o valor da linha de pré-busca efetiva definido de OCI_ATTR_PREFETCH_ROWS, oraaccess.xml e o parâmetro de inicialização do banco de dados CLIENT_PREFETCH_ROWS. Se o valor OCI_ATTR_PREFETCH_MEMORY for definido, o valor retornado por OCIAttrGet() poderá não ser o valor final das linhas de pré-busca e poderá ser restrito ao número máximo de linhas permitido pelo valor de memória especificado pelo atributo OCI_ATTR_PREFETCH_MEMORY.

Consulte Também:

JOB_QUEUE_PROCESSES

Defina o parâmetro JOB_QUEUE_PROCESSES para especificar o número máximo de colaboradores de jobs que podem ser criados para executar jobs do Oracle Scheduler (DBMS_SCHEDULER).

A definição do valor como 0 desativa jobs do Scheduler não fornecidos pela Oracle.

Propriedade Descrição
Tipo de parâmetro Número Inteiro
Sintaxe JOB_QUEUE_PROCESSES = integer
Valor Padrão

O valor padrão depende da contagem de ECPUs (contagem de OCPUs se seu banco de dados usar OCPUs) e da definição do dimensionamento automático de ECPU (dimensionamento automático de OCPU se seu banco de dados usar OCPUs). Consulte os detalhes na tabela a seguir.

Modificável ALTER SYSTEM
Faixa de valores

Valor mínimo: 0

O valor máximo depende da contagem de ECPUs (contagem de OCPUs se seu banco de dados usar OCPUs) e da definição para dimensionamento automático de ECPU (dimensionamento automático de OCPU se seu banco de dados usar OCPUs), conforme mostrado na tabela a seguir.

Os valores padrão e máximo para JOB_QUEUE_PROCESSES diferem dependendo do modelo de computação que você usa. Consulte Modelos de Computação no Autonomous Database para obter mais informações.

Modelo de Computação Valor Padrão e Máximo com Dimensionamento Automático Desativado Valor Padrão e Máximo com Dimensionamento Automático Ativado
ECPU 7,5 x contagem de ECPUs 22,5 x contagem de ECPUs
OCPU 30 x contagem de OCPUs 90 x contagem de OCPUs

O coordenador de tarefas e os colaboradores de tarefas do Oracle Scheduler são controlados pelo parâmetro JOB_QUEUE_PROCESSES. O número real de colaboradores do cargo criados para jobs do Oracle Scheduler é ajustado automaticamente pelo Scheduler, dependendo de vários fatores, incluindo recursos disponíveis, definições do Resource Manager e jobs em execução no momento.

O valor padrão para JOB_QUEUE_PROCESSES fornece um compromisso entre a qualidade do serviço para aplicativos e o uso razoável dos recursos do sistema. No entanto, é possível que o valor padrão não atenda a todos os ambientes.

A definição do valor de JOB_QUEUE_PROCESSES como 0 desativa jobs do Scheduler não fornecidos pela Oracle. Quando JOB_QUEUE_PROCESSES é definido como 0, isso não desativa nenhum job interno para usuários fornecidos pela Oracle (os jobs relacionados ao serviço executados por usuários fornecidos pela Oracle continuam a ser programados).

Os usuários fornecidos pela Oracle são usuários marcados como ORACLE_MAINTAINED com o valor Y. Os usuários não fornecidos pela Oracle são usuários marcados como ORACLE_MAINTAINED com o valor N.

Consulte ALL_USERS para obter mais informações.

LOCKDOWN_ERRORS

Defina o parâmetro LOCKDOWN_ERRORS para controlar se os erros de perfil de bloqueio do Autonomous Database serão gerados ou ignorados.

O Autonomous Database usa perfis de bloqueio para restringir determinadas funcionalidades e recursos do banco de dados. Por padrão, o banco de dados gera um erro sempre que você tenta executar um comando SQL restrito pelo perfil de bloqueio do Autonomous Database. O parâmetro LOCKDOWN_ERRORS permite suprimir erros de perfil de bloqueio. Além disso, quando LOCKDOWN_ERRORS é definido com o valor IGNORE, ao ignorar um erro, o banco de dados registra os detalhes sobre a instrução SQL, o usuário e o timestamp do comando.

Observação

Avalie cuidadosamente seus scripts existentes antes de definir o valor desse parâmetro como IGNORE. Quando você define o valor como IGNORE, qualquer script existente que você usar não gerará mais erros de bloqueio.

Você pode usar a visualização DBA_LOCKDOWN_ERRORS para obter informações sobre erros de perfil de bloqueio. Consulte Exibição de Erros de Bloqueio para obter mais informações.

Propriedade Descrição
Tipo de parâmetro String
Sintaxe LOCKDOWN_ERRORS = IGNORE | RAISE
Valor Padrão

O valor padrão é RAISE.

Modificável ALTER SYSTEM
Valores válidos

RAISE: Gerar erros de perfil de bloqueio.

IGNORE: Suprimir erros de perfil de bloqueio.

RESULT_CACHE_INTEGRITY

Defina o parâmetro RESULT_CACHE_INTEGRITY para especificar se o cache de resultados considera consultas usando construções possivelmente não determinísticas como candidatas ao armazenamento em cache de resultados.

Propriedade Descrição
Tipo de parâmetro String
Sintaxe RESULT_CACHE_INTEGRITY = { ENFORCED | TRUSTED }
Valor Padrão

Para o Autonomous Database, o valor padrão é: ENFORCED

Modificável ALTER SYSTEM

Valores

  • ENFORCED: Independentemente da definição de RESULT_CACHE_MODE ou de dicas especificadas, somente construções determinísticas são elegíveis para armazenamento em cache de resultados. Por exemplo, consultas que usam funções PL/SQL que não são declaradas como determinísticas nunca são armazenadas em cache (a menos que as funções sejam declaradas como determinísticas, os resultados da consulta com essas funções não serão armazenados em cache).

  • TRUSTED: O banco de dados respeita a definição de RESULT_CACHE_MODE e as dicas especificadas e considerará consultas usando construções possivelmente não determinísticas como candidatas ao cache de resultados. Por exemplo, consultas que usam funções PL/SQL que não são declaradas como determinísticas podem ser armazenadas em cache. Observe, no entanto, que os resultados conhecidos como não determinísticos não são armazenados em cache (por exemplo, SYSDATE ou construções envolvendo SYSDATE).

RESULT_CACHE_MODE

Defina o parâmetro RESULT_CACHE_MODE para especificar quais consultas são elegíveis para armazenar conjuntos de resultados no cache de resultados. Somente os planos de execução de consulta com o operador de cache de resultados tentarão ler ou gravar no cache de resultados.

Propriedade Descrição
Tipo de parâmetro String
Sintaxe RESULT_CACHE_MODE = { MANUAL | MANUAL_TEMP | FORCE | FORCE_TEMP }
Valor Padrão

Para o Autonomous Database com tipo de carga de trabalho definido como Data Warehouse: FORCE

Para tipos de carga de trabalho Processamento de Transações, JSON ou APEX: MANUAL

Modificável ALTER SESSION, ALTER SYSTEM

Consulte RESULT_CACHE_MODE para obter mais informações.

Usando Dicas de Cache de Resultados SQL

Use dicas de cache de resultados no nível do aplicativo para controlar o comportamento de armazenamento em cache. As dicas de cache de resultados SQL têm precedência sobre o modo de cache de resultados e as anotações da tabela de cache de resultados.

Você pode usar dicas de cache de resultados SQL das seguintes maneiras:

  • Usando a Dica RESULT_CACHE

  • Usando a Dica NO_RESULT_CACHE

  • Usando a Dica RESULT_CACHE em Views

Usando a Dica RESULT_CACHE

Quando o modo de cache de resultados é MANUAL, a dica /*+ RESULT_CACHE */ instrui o banco de dados a armazenar em cache os resultados de um bloco de consultas e a usar os resultados armazenados em cache em execuções futuras.

Consulte Usando a Dica RESULT_CACHE e Dica RESULT_CACHE para obter mais informações.

Usando a Dica NO_RESULT_CACHE

A dica /*+ NO_RESULT_CACHE */ instrui o banco de dados a não armazenar os resultados em cache nos caches de resultados do servidor ou do cliente.

Consulte Usando a Dica NO_RESULT_CACHE e Dica RESULT_CACHE para obter mais informações.

Usando a Dica RESULT_CACHE em Views

A dica RESULT_CACHE só se aplica ao bloco de consulta no qual a dica é especificada. Se a dica for especificada apenas em uma exibição, somente esses resultados serão armazenados em cache.

Consulte Usando a Dica RESULT_CACHE em Views e RESULT_CACHE Hint para obter mais informações.