The view pg_settings provides access to run-time parameters of the server. It is essentially an alternative interface to the SHOW and SET commands. It also provides access to some facts about each parameter that are not directly available from SHOW, such as minimum and maximum values.
Table 43-44. pg_settings Columns
|name||text||Run-time configuration parameter name|
|setting||text||Current value of the parameter|
|unit||text||Implicit unit of the parameter|
|category||text||Logical group of the parameter|
|short_desc||text||A brief description of the parameter|
|extra_desc||text||Additional, more detailed, information about the parameter|
|context||text||Context required to set the parameter's value|
|vartype||text||Parameter type (bool, integer, real, or string)|
|source||text||Source of the current parameter value|
|min_val||text||Minimum allowed value of the parameter (NULL for non-numeric values)|
|max_val||text||Maximum allowed value of the parameter (NULL for non-numeric values)|
The pg_settings view cannot be inserted into or deleted from, but it can be updated. An UPDATE applied to a row of pg_settings is equivalent to executing the SET command on that named parameter. The change only affects the value used by the current session. If an UPDATE is issued within a transaction that is later aborted, the effects of the UPDATE command disappear when the transaction is rolled back. Once the surrounding transaction is committed, the effects will persist until the end of the session, unless overridden by another UPDATE or SET.