Open Query to PostGres Passing Parameters

  • Hey guys,

    Looking to pass in the @targetDbName into the Open Query.

    The target DB is PostGres and requires 2 single quotes around the dataset name.

    Is this possible.

    I have tried many possible variations using the '+ @variableName +'

    USE JonathanDB

    declare @dqzDateVer int;

    declare @targetDbName varchar(25);

    select @targetDbName = DB_NAME();

    select @dqzDateVer = dqz_date_ver FROM OPENQUERY(ofr_meta_db, 'select dqz_date_ver from ofr_registry.dataset_feed_state where dataset_name=''JonathanDB'' and state = ''Done'' order by row_iddesc limit 1');

    print @dqzDateVer ;

    print @targetDbName;

  • Jonathan Marshall (3/24/2014)


    Hey guys,

    Looking to pass in the @targetDbName into the Open Query.

    The target DB is PostGres and requires 2 single quotes around the dataset name.

    Is this possible.

    I have tried many possible variations using the '+ @variableName +'

    USE JonathanDB

    declare @dqzDateVer int;

    declare @targetDbName varchar(25);

    select @targetDbName = DB_NAME();

    select @dqzDateVer = dqz_date_ver FROM OPENQUERY(ofr_meta_db, 'select dqz_date_ver from ofr_registry.dataset_feed_state where dataset_name=''JonathanDB'' and state = ''Done'' order by row_iddesc limit 1');

    print @dqzDateVer ;

    print @targetDbName;

    If you are passing a character / string type parameter value in psql, you should enclose it in apostrophes (ascii 39).

Viewing 2 posts - 1 through 1 (of 1 total)

You must be logged in to reply to this topic. Login to reply