Re: create function : change name of input parameter - Mailing list pgsql-general

From Adrian Klaver
Subject Re: create function : change name of input parameter
Date
Msg-id 53F4C49C.2040404@aklaver.com
Whole thread Raw
In response to Re: create function : change name of input parameter  (Lori Corbani <Lori.Corbani@jax.org>)
Responses Re: create function : change name of input parameter  (Lori Corbani <Lori.Corbani@jax.org>)
List pgsql-general
On 08/20/2014 08:42 AM, Lori Corbani wrote:
>
> OK...if I manually run this within psql it is fine.
>
> But I have a shell script in which I am wrapping a call to 'psql'...and I guess it does not like how things are being
passedin when I do it this way. 
>
> So, yes, it is working correctly when I copy/paste my script directly into psql.
>
> Will try a different approach to my wrapper.

An additional thing to watch out for is the mixed case in the function
name. To demonstrate using a table name:

aklaver@test=> create table "CamelCap_Quoted" (id int);
CREATE TABLE
aklaver@test=> create table CamelCap_Not_Quoted (id int);
CREATE TABLE
aklaver@test=> select * from CamelCap_Quoted;
ERROR:  relation "camelcap_quoted" does not exist
LINE 1: select * from CamelCap_Quoted;
                       ^
aklaver@test=> select * from "CamelCap_Quoted";
  id


----


(0 rows)





aklaver@test=> select * from CamelCap_Not_Quoted;


  id


----


(0 rows)


aklaver@test=> \d
                  List of relations
  Schema |        Name         |   Type   |  Owner
--------+---------------------+----------+----------
  public | CamelCap_Quoted     | table    | aklaver
  public | camelcap_not_quoted | table    | aklaver


If the name is quoted the case is preserved and you have to quote the
name to get the same object. A lot of frameworks/ORMS automatically
quote object names so this something to watch out for. In the unquoted
case the name is folded to lower case by default. So you can get in a
situation where you have both the quoted and unquoted name and not be
working on the object you think you are.

>
> Many thanks!
> Lori
>


--
Adrian Klaver
adrian.klaver@aklaver.com


pgsql-general by date:

Previous
From: Lori Corbani
Date:
Subject: Re: create function : change name of input parameter
Next
From: Lori Corbani
Date:
Subject: Re: create function : change name of input parameter