English
Instant Developer Foundation Documentazione
  • Community
  • Evoluzione In:de
  • Richieste di modifica
  • Document Orientation

Uso di query con parametri

copia link
Proponente Stato Grado d'interesse Diff. Riferimenti
Francesco Sandrelli - Area.It Spa stato (0 voti) 16 Document Orientation Ambito -  Miglioramento  -  Tipo 413  

Titolo

Uso di query con parametri


Descrizione

Velocizzare il caricamento dei documenti permettendo l'utilizzo dei Prepared Statement.


Beneficio della modifica

Alcuni database, e per certo Oracle, possiedono una cache (library cache) delle istruzioni SQL passate al DB che permette di riutilizzare la parserizzazione già fatta in precedenza.
Se una select generata dal programma richiede un tempo Tp per la parserizzazione e un tempo Te per l'esecuzione e tale select viene richiesta N volte al programma, Oracle impiega così un tempo Tp + N x Te anziché N x (Tp+Te). Su un caso reale di una query nemmeno particolarmente complessa (select su un'unica vista di una ventina di campi) Tp è stato stimato attorno ai 2 secondi.
Se non si usano i parametri due query che differiscono solo per il valore di un filtro non beneficiano di questa ottimizzazione.

Esempio:
SELECT A,B,C from TBL where A='XXX'
SELECT A,B,C from TBL where A='YYY'
Non vengono riconosciute da Oracle come la stessa query: N x (Tp+Te)

SELECT A,B,C from TBL where A=? , par='XXX'
SELECT A,B,C from TBL where A=? , par='YYY'
Vengono riconosciute da Oracle come la stessa query: Tp + N x Te

Commenti

Attenzione, questo articolo è stato dichiarato obsoleto! Ultima modifica: 23/03/2021 / Validità: da 8.0.3560