Re: quoting internal variable names - Mailing list pgsql-general

From Ron Peterson
Subject Re: quoting internal variable names
Date
Msg-id 20050219234545.GA13800@mtholyoke.edu
Whole thread Raw
In response to quoting internal variable names  (Ron Peterson <rpeterso@mtholyoke.edu>)
List pgsql-general
On Sat, Feb 19, 2005 at 05:30:25PM -0500, Ron Peterson wrote:
> Hi,
>
> I'm trying to use PostgreSQL's internal variables to simplify some shell
> scripting database setup stuff.  Single quotes appear to behave
> differently in diffent contexts.


I decided to just do the proper quoting within the value contained by
the variable, and that works fine.

If I'm not mistaken, in my example below, the single quote behaviour for
ENCODING is in fact correct (:v_encoding should be read as a string
literal), and whatever is going on for WITH PASSWORD is incorrect.  Is
that right?

Not a big deal, I have things working, I'd just like to know if I'm
mixed up about something here.

Best.

--
Ron Peterson
Network & Systems Manager
Mount Holyoke College
http://www.mtholyoke.edu/~rpeterso



> CREATE USER
>   :v_dbadmin
> WITH PASSWORD
>   ':v_dbpass';
> CREATE USER
>
> ....CREATE USER worked o.k.
>
>
> CREATE DATABASE
>   :v_dbname
> WITH OWNER
>   :v_dbadmin
> ENCODING
>   ':v_encoding';
> ERROR:  :v_encoding is not a valid encoding name
>
> ....here the quotation marks appear to throwing things off
>
>
> :v_encoding is set to SQL_ASCII.  If I remove the quotation marks, then
> I (appropriately enough) get the error:
>
> CREATE DATABASE
>   :v_dbname
> WITH OWNER
>   :v_dbadmin
> ENCODING
>   :v_encoding;
> ERROR:  syntax error at or near "SQL_ASCII" at character 59
> LINE 6:   SQL_ASCII;
>
>
> So it seems like the single quotes are causing :v_encoding to be read as
> a string literal for ENCODING, but they don't do that for WITH PASSWORD.
>
> ?
>
> --
> Ron Peterson
> Network & Systems Manager
> Mount Holyoke College
> http://www.mtholyoke.edu/~rpeterso
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
>       joining column's datatypes do not match

pgsql-general by date:

Previous
From: Ron Peterson
Date:
Subject: quoting internal variable names
Next
From: Jonel Rienton
Date:
Subject: Re: PGSQL 8.0.1 Win 2K Installation Problem