When I create or update a function or procedure in the Postgres database, I see LANGUAGE 'plpgsql' VOLATILE at the end of the function.What does this mean and what is its purpose?
LANGUAGE 'plpgsql' VOLATILE
From Postgres Docs :
VOLATILE indicates that the value of a function can vary even within a single-slope scan, so optimization cannot be performed. Relatively few database functions are unstable in this sense; some examples are random (), currval (), timeofday (). Note that any function that has side effects should be classified as unstable, even if its result is quite predictable to prevent call optimization; an example is SETVAL ().
Last but not least, LANGUAGE 'plpgsql' VOLATILE means that someone did not receive the note.
The language name in CREATE FUNCTION is an identifier and should not be specified. Must be:
CREATE FUNCTION
LANGUAGE plpgsql VOLATILE
Little practice can lead to confusing errors. More on this answer:PostgreSQL procedural language "C" not found
Source: https://habr.com/ru/post/1436066/More articles:Has anyone seen such php encryption? - phpDetermine if the project is compiled for windows 8 or wp - c #Vs Library direct code in android - javaScript integration with Selenium Webdriver - javahow to send emails with alternative views either as plain text or as HTML templates.? - c #What is the correct way to reload UIView? - iosBPEL Apache ODE.deployed file - eclipseHow to get the base class for my protobuf-net classes - protobuf-netWhy is my UiProperty no longer editable in GWT Designer? - eclipseGCM (Google Cloud Messaging) bulk with Linux - google-cloud-messagingAll Articles