Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Using PGAdmin III I can right-click on a database, navigate to the Variables tab, and put a variable name-value property on the database itself. Is there a way to customize these? I saw an application_name variable, but I'd like to have an application_version variable.

share|improve this question
up vote 4 down vote accepted

You have to add the variable to the end of your postgresql.conf like


custom_variable_classes = 'general'     # list of custom variable class names

general.application_version = 'v1.0'

When restarted, you can add general.application_version manually in PgAdmin (it will not show up in the drop-down - at least not for me). Otherwise, you can use it just like any other PostgreSQL variable.

Update for version 9.2 and newer

From PostgreSQL 9.2 onwards, we don't have to set custom_variable_classes anymore. One can set whatever variable they want - the only limitation seems to be it still has to have two parts:

SET something TO 'bla';
ERROR:  unrecognized configuration parameter "something"

SET thing.something TO 'bla';

I guess this is so to avoid collision with the builtin parameters.

share|improve this answer
Hmmm. No way to do that from a SQL query in the database? – Jeremy Holovacs Dec 7 '12 at 12:50
You have to first define the variables in postgresql.conf. AFAIK this requires restarting PostgreSQL, so you can't do that from SQL. – dezso Dec 7 '12 at 12:55
Thanks for the info. – Jeremy Holovacs Dec 7 '12 at 13:35

To add to @dezso's answer, these variables can be changed with

SELECT set_config('', 'value', valid_for_transaction_only::boolean)

and read with

SELECT current_setting('')

See this link for more info:

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.