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

From Lori Corbani
Subject Re: create function : change name of input parameter
Date
Msg-id 4542636FF9185340AC1FDDE71BF1992B62BFE309@jaxbhexms02.jax.org
Whole thread Raw
In response to Re: create function : change name of input parameter  (Adrian Klaver <adrian.klaver@aklaver.com>)
List pgsql-general
It worked when I included the parameter list in the DROP statement.

Thank you!
Lori


-----Original Message-----
From: Adrian Klaver [mailto:adrian.klaver@aklaver.com]
Sent: Wednesday, August 20, 2014 11:54 AM
To: Lori Corbani; pgsql-general@postgresql.org
Subject: Re: [GENERAL] create function : change name of input parameter

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
(idint); 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/ORMSautomatically quote object names so this something to watch out for. In the unquoted case the name is
foldedto lower case by default. So you can get in a situation where you have both the quoted and unquoted name and not
beworking on the object you think you are. 

>
> Many thanks!
> Lori
>


--
Adrian Klaver
adrian.klaver@aklaver.com

The information in this email, including attachments, may be confidential and is intended solely for the addressee(s).
Ifyou believe you received this email by mistake, please notify the sender by return email as soon as possible. 


pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: create function : change name of input parameter
Next
From: TigerNassau
Date:
Subject: Re: initial auth failure on debian