sql >> Databasteknik >  >> RDS >> PostgreSQL

PostgreSQL-prestanda för ad-hoc SQL vs funktioner

Frågeplanen för ad hoc-frågor är inte cachad, endast för förberedda uttalanden . Och PL/pgSQL-funktioner hanterar alla SQL-satser som förberedda satser internt. (Med det anmärkningsvärda undantaget för dynamisk SQL med EXECUTE .) Var och en för den aktuella sessionens omfattning, inte längre än.

Så PL/pgSQL-funktioner (inte SQL-funktioner!) kan hjälpa till med upprepad exekvering av sofistikerade frågor inom samma session. Precis som förberedda uttalanden.

Klientprogramvara kan använda förberedda uttalanden som standard. Eller protokollet "extended query" , med samma effekt.

Relaterat:

Det relaterade svaret som startade tråden på pgsql-general du syftar på:

Tänk också på kapitlet Planera cachelagring för PL/pgSQL i manualen.




  1. Hitta liknande bilder i (ren) PHP / MySQL

  2. Summa topp 5 värden i MySQL

  3. Döda MySQL-fråga vid avbrytning av användare

  4. php mysql_connect Varning inaktivera