sql >> Database >  >> RDS >> Oracle

Enkele cursor doorspoelen

Eerder vandaag beantwoordde ik een vraag waarbij iemand als mogelijke oplossing het idee voorstelde om de gedeelde pool leeg te spoelen om een ​​probleem met één SQL-instructie op te lossen. Ik vind dit een slecht advies. Zoals ik in mijn antwoord al zei, waarom zou je de prestaties van alle eindgebruikers doden om het probleem van één persoon op te lossen? Mijn antwoord was dat als we die SQL-instructie uit de Shared Pool moesten verwijderen, we de cursor doorspoelen. Deze mogelijkheid bestaat al sinds Oracle 10g. En Oracle-medewerker blogde de details hier:

https://blogs.oracle.com/mandalika/entry/oracle_rdbms_flushing_a_single

De mogelijkheid bestaat in Oracle 11g. Ik neem aan dat deze ook in 12c nog beschikbaar is. Ik heb niet gecontroleerd. Maar ik vraag me af of het nodig is in Oracle 12c met de nieuwe functies van adaptive optimizer?


  1. Kan %NOTFOUND null retourneren na een fetch?

  2. SQL Server String of binaire gegevens worden afgekapt

  3. Migreren van DB2 naar PostgreSQL - Wat u moet weten

  4. Hoe splits ik een begrensde tekenreeks in SQL Server zonder een functie te maken?