Thread: How to determine current database?
I am using postgres 7.3.4 and need to be able to determine which database a query is being run in (from a script). pg_database lists databases but doesn't tell me which one is currently active. Is there a query I can use along the lines of: UPDATE tblUpdates SET xxx=1234 WHERE pg_current = TRUE; or UPDATE tblUpdates SET xxx=1234 WHERE pg_current = thisDBname; We have about 15 databases all set up identically and when the structure changes I run scripts to update them to ensure that they are all the same. I need to create two new databases which have slight changes (different default values - for now) and want to be able to have my scripts be able to determine which database their running from. Thanks Ron
Ron St-Pierre wrote: > I am using postgres 7.3.4 and need to be able to determine which > database a query is being run in (from a script). pg_database lists > databases but doesn't tell me which one is currently active. See: http://www.postgresql.org/docs/7.3/static/functions-misc.html HTH, Joe
On Feb 13, 2004, at 6:05 PM, Ron St-Pierre wrote: > I am using postgres 7.3.4 and need to be able to determine which > database a query is being run in (from a script). pg_database lists > databases but doesn't tell me which one is currently active. Is there > a query I can use along the lines of: The built-in function "current_database()" returns the current database name. =# select current_database(); current_database ------------------ testing (1 row) Use it in your update statements too. eric > UPDATE tblUpdates SET xxx=1234 WHERE pg_current = TRUE; > or > UPDATE tblUpdates SET xxx=1234 WHERE pg_current = thisDBname; > > We have about 15 databases all set up identically and when the > structure changes I run scripts to update them to ensure that they are > all the same. I need to create two new databases which have slight > changes (different default values - for now) and want to be able to > have my scripts be able to determine which database their running > from. > > Thanks > > Ron > > > ---------------------------(end of > broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to > majordomo@postgresql.org
Ron St-Pierre <rstpierre@syscor.com> writes: > I am using postgres 7.3.4 and need to be able to determine which > database a query is being run in (from a script). See current_database(): http://www.postgresql.org/docs/7.4/static/functions-misc.html regards, tom lane
Eric Ridge wrote: > On Feb 13, 2004, at 6:05 PM, Ron St-Pierre wrote: > >> I am using postgres 7.3.4 and need to be able to determine which >> database a query is being run in (from a script). pg_database lists >> databases but doesn't tell me which one is currently active. Is there >> a query I can use along the lines of: > > > The built-in function "current_database()" returns the current > database name. > > =# select current_database(); > current_database > ------------------ > testing > (1 row) > > Use it in your update statements too. > > eric That's exactly what I need! Joe Conway wrote: > See: > http://www.postgresql.org/docs/7.3/static/functions-misc.html Thanks guys. I was searching the docs looking for functions starting with pg_ Ron