From de9801fc62ba9ed905c2f20686459a206d453453 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Tue, 20 Aug 2002 04:46:00 +0000 Subject: Add current_database(). > Quick system function to pull out the current database. > > I've used this a number of times to allow stored procedures to find out > where they are. Especially useful for those that do logging or hit a > remote server. > > It's called current_database() to match with current_user(). It's also a necessity for an informational schema. The catalog (database) name is required in a number of places. Rod Taylor --- src/backend/utils/adt/misc.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'src/backend/utils/adt/misc.c') diff --git a/src/backend/utils/adt/misc.c b/src/backend/utils/adt/misc.c index 57640ef08d0..24eb6821843 100644 --- a/src/backend/utils/adt/misc.c +++ b/src/backend/utils/adt/misc.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/misc.c,v 1.24 2002/06/20 20:29:37 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/misc.c,v 1.25 2002/08/20 04:45:59 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -17,6 +17,7 @@ #include #include "postgres.h" +#include "miscadmin.h" #include "utils/builtins.h" @@ -111,3 +112,19 @@ userfntest(PG_FUNCTION_ARGS) PG_RETURN_INT32(i); } + +/* + * current_database() + * Expose the current database to the user + */ +Datum +current_database(PG_FUNCTION_ARGS) +{ + Name db; + + db = (Name) palloc(NAMEDATALEN); + + namestrcpy(db, DatabaseName); + + PG_RETURN_NAME(db); +} -- cgit v1.2.3