Re: How can i pass variable in dblink_connect_u ? - Mailing list pgsql-sql

From aditya desai
Subject Re: How can i pass variable in dblink_connect_u ?
Date
Msg-id CAN0SRDHFGFPZE_QN0pUnLZ53qOgf7R70UrL4XJnjLMAwoDBNxw@mail.gmail.com
Whole thread Raw
In response to Re: How can i pass variable in dblink_connect_u ?  (Joe Conway <mail@joeconway.com>)
List pgsql-sql
Thanks Joe

On Tue, Feb 1, 2022 at 7:11 PM Joe Conway <mail@joeconway.com> wrote:
On 2/1/22 05:42, aditya desai wrote:
> Hi All,
> how can I pass variables in dblink_connect_u ?
>
> Current code hardcoded DB name:
> perform * from dblink_connect_u('myconn','dbname=mydb');
>
> Expected:
> databasename=current_database();
> perform * from dblink_connect_u('myconn','dbname=databasename');
>
> databasename is getting considered as text.

Correct, it is a string literal. So just create the string literal using
string manipulation functionality -- e.g.:

SELECT
  dblink_connect_u('myconn','dbname=' ||
  current_database());
  dblink_connect_u
------------------
  OK
(1 row)

HTH,

Joe

--
Crunchy Data - http://crunchydata.com
PostgreSQL Support for Secure Enterprises
Consulting, Training, & Open Source Development

pgsql-sql by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re:
Next
From: aditya desai
Date:
Subject: Increase fetch fize of oracl_fdw(ALTER SERVER)