Pacchetto DBMS_CACHE
Il package DBMS_CACHE facilita l'inserimento automatico nella cache delle tabelle esterne in un'istanza di Autonomous AI Database.
- Riepilogo dei sottoprogrammi DBMS_CACHE
Questa tabella riepiloga i sottoprogrammi inclusi nel pacchettoDBMS_CACHE.
Argomento padre: Riferimento del pacchetto fornito dal database AI autonomo
Riepilogo dei sottoprogrammi DBMS_CACHE
La tabella riportata di seguito riassume i sottoprogrammi inclusi nel pacchetto DBMS_CACHE.
| Sottoprogramma | Descrizione |
|---|---|
|
Cancella tutte le cache delle tabelle esterne per un utente specificato. |
|
|
Recupera le proprietà di inserimento nella cache della tabella esterna. |
|
|
Recupera le proprietà di inserimento nella cache della tabella esterna per un utente specificato. |
|
|
Aggiorna tutte le cache delle tabelle esterne per un utente specificato. |
|
|
Specifica la preferenza di inserimento nella cache della tabella esterna per tutti gli utenti del database. |
|
|
Specifica la preferenza di inserimento nella cache della tabella esterna per un utente specificato. |
- Procedura CLEAR
Utilizzare la proceduraDBMS_CACHE.CLEARper eliminare tutte le cache di tabelle esterne per un utente specificato. - GET_GLOBAL_PROPERTY Procedura
La proceduraDBMS_CACHE.GET_GLOBAL_PROPERTYrecupera le preferenze di inserimento nella cache delle tabelle esterne per tutti gli utenti del database. Questa procedura è sovraccaricata. - SET_GLOBAL_PROPERTY Procedura
Utilizzare la proceduraDBMS_CACHE.SET_GLOBAL_PROPERTYper impostare le proprietà di inserimento nella cache AUTO per tutti gli utenti del database, inclusi quelli che abilitano l'inserimento automatico nella cache per il database. Questa procedura è sovraccaricata. - Procedura REFRESH
Utilizzare la proceduraDBMS_CACHE.REFRESHper aggiornare tutte le cache delle tabelle esterne AUTO per un utente specificato. - GET_USER_PROPERTY Procedura
Utilizzare la proceduraDBMS_CACHE.GET_USER_PROPERTYper recuperare le proprietà di inserimento automatico nella cache per un utente. - SET_USER_PROPERTY Procedura
Utilizzare la proceduraDBMS_CACHE.SET_USER_PROPERTYper impostare le proprietà di inserimento nella cache AUTO per uno schema specificato, incluse quelle che abilitano l'inserimento automatico nella cache per lo schema. Questa procedura è sovraccaricata.
Argomento padre: Pacchetto DBMS_CACHE
Procedura CLEAR
Utilizzare la procedura DBMS_CACHE.CLEAR per eliminare tutte le cache delle tabelle esterne per un utente specificato.
DBMS_CACHE.CLEAR elimina tutte le cache delle tabelle esterne e rilascia lo spazio di memorizzazione, in modo simile al funzionamento del comando DROP in una tabella di database.
Sintassi
DBMS_CACHE.CLEAR (
owner IN VARCHAR2
);Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome dello schema. |
Esempio
BEGIN
DBMS_CACHE.CLEAR (
owner => 'SALES');
END;
/Nota per l'uso
-
Per cancellare una cache, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEnel pacchettoDBMS_CACHE.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE
Procedura GET_GLOBAL_PROPERTY
La procedura DBMS_CACHE.GET_GLOBAL_PROPERTY recupera le preferenze di inserimento nella cache delle tabelle esterne per tutti gli utenti del database. Questa procedura è sovraccaricata.
Sintassi
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_num OUT VARCHAR2);
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_str OUT VARCHAR2);
Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome della proprietà. I valori validi per
property_name sono riportati di seguito.
|
|
|
Recupera un valore |
|
|
Recupera un valore |
Esempio
SET SERVEROUTPUT ON;
DECLARE
cache_property NUMBER;
BEGIN
DBMS_CACHE.GET_GLOBAL_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value => cache_property
);
DBMS_OUTPUT.PUT_LINE('MAX_CACHE_SIZE = ' || cache_property);
END;
/Nota per l'uso
-
Per eseguire questa procedura, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEsul pacchettoDBMS_CACHE.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE
Procedura SET_GLOBAL_PROPERTY
Utilizzare la procedura DBMS_CACHE.SET_GLOBAL_PROPERTY per impostare le proprietà di inserimento nella cache AUTO per tutti gli utenti del database, inclusi quelli che abilitano l'inserimento automatico nella cache per il database. Questa procedura è sovraccaricata.
Per impostazione predefinita, l'inserimento automatico nella cache delle tabelle esterne è disabilitato. Per abilitarla, impostare la dimensione della cache su un valore diverso da zero utilizzando la proprietà MAX_CACHE_SIZE o MAX_CACHE_SIZE della procedura DBMS_CACHE.SET_GLOBAL_PROPERTY. Ciò consente l'inserimento automatico nella cache a livello globale per il database.
Sintassi
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_num IN NUMBER);
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name IN VARCHAR2,
property_value_str IN VARCHAR2);
Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome della proprietà. I valori validi per
property_name sono riportati di seguito.
|
|
|
Fornisce un valore |
|
|
Fornisce un valore |
Esempi
BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value_num => 50);
END;
/BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'AUTO_REFRESH_MODE',
property_value_str => 'NEW');
END;
/BEGIN
DBMS_CACHE.SET_GLOBAL_PROPERTY (
property_name => 'MAX_REFRESH_WINDOW',
property_value_num => 20);
END;
/Note sull'uso
-
Per eseguire questa procedura, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEsul pacchettoDBMS_CACHE. -
La proprietà
MAX_REFRESH_WINDOWspecifica, in secondo luogo, il tempo massimo consentito per l'aggiornamento delle cache delle tabelle esterne. Se l'aggiornamento supera il limite specificato, l'aggiornamento della cache termina normalmente e le eventuali cache idonee rimanenti vengono inserite nella coda per il ciclo di aggiornamento successivo. -
Quando si aggiornano le cache utilizzando la procedura
DBMS_CACHE.REFRESH, il parametro della procedura ha la precedenza sulla proprietàAUTO_REFRESH_MODE.Per ulteriori informazioni, vedere Procedura REFRESH.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE
Procedura REFRESH
Utilizzare la procedura DBMS_CACHE.REFRESH per aggiornare tutte le cache delle tabelle esterne AUTO per un utente specificato.
Sintassi
DBMS_CACHE.REFRESH (
owner IN VARCHAR2,
refresh_type IN VARCHAR2 DEFAULT ALL
);Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome dello schema. |
|
|
Specifica l'opzione di aggiornamento. Di seguito sono riportati i valori
refresh_type validi.
Questo parametro è facoltativo e il valore predefinito è |
Esempio
BEGIN
DBMS_CACHE.REFRESH (
owner => 'SALES',
refresh_type => 'CURRENT');
END;
/Note sull'uso
-
Per eseguire questa procedura, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEsul pacchettoDBMS_CACHE. -
Se non si specifica un valore per il parametro
refresh_type, Oracle esegue l'aggiornamento in base al valoreauto_refresh_mode. Il valore predefinito perauto_refresh_modeèALL. -
Quando la proprietà
MAX_REFRESH_WINDOWè impostata, Oracle tenta di eseguire l'aggiornamento nella finestra specificata. Se l'aggiornamento supera il limite specificato, l'aggiornamento della cache termina normalmente e le eventuali cache idonee rimanenti vengono inserite nella coda per il ciclo di aggiornamento successivo. -
Tutte le cache AUTO nel database vengono gestite utilizzando un algoritmo di rimozione simile a quello utilizzato meno di recente (LRU). In condizioni di pressione dello spazio, le cache a cui si è avuto accesso meno di recente vengono automaticamente eliminate durante il processo di aggiornamento per rilasciare lo spazio di storage.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE
Procedura GET_USER_PROPERTY
Utilizzare la procedura DBMS_CACHE.GET_USER_PROPERTY per recuperare le proprietà di inserimento automatico nella cache per un utente.
Sintassi
DBMS_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL,
property_value_str OUT VARCHAR2);
DBMS_CACHE.GET_USER_PROPERTY (
property_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL,
property_value_num OUT NUMBER);Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome della proprietà. I valori validi per
property_name sono riportati di seguito.
|
|
|
Specifica il nome dello schema. Questo parametro è facoltativo e utilizza per impostazione predefinita lo schema corrente. |
|
|
Recupera un valore |
|
|
Recupera un valore |
Esempio
SET SERVEROUTPUT ON;
DECLARE
cache_property NUMBER;
BEGIN
DBMS_CACHE.GET_USER_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
owner => NULL,
property_value => cache_property
);
DBMS_OUTPUT.PUT_LINE('MAX_CACHE_SIZE = ' || cache_property);
END;
/Nota per l'uso
-
Per eseguire questa procedura, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEsul pacchettoDBMS_CACHE.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE
Procedura SET_USER_PROPERTY
Utilizzare la procedura DBMS_CACHE.SET_USER_PROPERTY per impostare le proprietà di inserimento nella cache AUTO per uno schema specificato, incluse quelle che abilitano l'inserimento nella cache automatico per lo schema. Questa procedura è sovraccaricata.
Sintassi
DBMS_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value_num IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL);
DBMS_CACHE.SET_USER_PROPERTY (
property_name IN VARCHAR2,
property_value_str IN NUMBER,
owner IN VARCHAR2 DEFAULT NULL
);
Parametri
| Parametro | Descrizione |
|---|---|
|
|
Specifica il nome della proprietà. I valori validi per
property_name sono riportati di seguito.
|
|
|
Fornisce un valore |
|
|
Fornisce un valore |
|
|
Specifica il nome dello schema. Questo parametro è facoltativo e utilizza per impostazione predefinita lo schema corrente. |
Esempio
BEGIN
DBMS_CACHE.SET_USER_PROPERTY (
property_name => 'MAX_CACHE_SIZE',
property_value_num => 50,
owner => 'SALES');
END;
/Nota per l'uso
-
Per eseguire questa procedura, è necessario aver eseguito il login come utente
ADMINo disporre del privilegioEXECUTEsul pacchettoDBMS_CACHE.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CACHE