Oracle
 sql >> Database >  >> RDS >> Oracle

Svuota RELIES_ON per RESULT_CACHE

una funzione che dipende solo dai suoi parametri può essere dichiarata DETERMINISTICA. I risultati di questa funzione verranno memorizzati nella cache in alcuni casi. Questo thread sui forum OTN mostra come i risultati delle funzioni deterministiche vengono memorizzati nella cache all'interno delle istruzioni SQL.

A partire da 10gR2, i risultati della funzione non vengono memorizzati nella cache nelle istruzioni SQL né vengono memorizzati nella cache in PL/SQL. Tuttavia, questa funzione di cache può essere utile se chiami una funzione in un SELECT in cui potrebbe essere chiamata molto tempo.

Al momento non ho un'istanza 11gR2 disponibile, quindi non posso testare la funzione RESULT_CACHE, ma hai considerato di delaring la tua funzione basandosi su una tabella fittizia fissa (una tabella che non viene mai aggiornata, ad esempio)?