Skip site navigation (1) Skip section navigation (2)

User Define Functions

From: "Lathika Wijerathne" <lathika(at)rezgateway(dot)com>
To: <pgsql-admin(at)postgresql(dot)org>
Subject: User Define Functions
Date: 2005-07-27 05:51:28
Message-ID: 20050726224915.55373F6D@dm16.mta.everyone.net (view raw or flat)
Thread:
Lists: pgsql-admin
Hi,

 

I have created the database with 3 schemas. 

Example : Schema names : Newyorlk, Atlanta,California

 

Each  schema has a similar  tables. But there can be schema specific tables
too.

 

I want to create a user define functions to retrieve information.

 

----------------------------------------------------------------------

CREATE OR REPLACE FUNCTION Newyorlk.get_customer_name (custid integer,
invoice integer)

  RETURNS varchar AS

$$

 

DECLARE

 m_display      varchar (100);

 m_status        varchar(10);

  BEGIN

 

   SELECT cname   INTO m_display from Newyorlk.CUSTOMER

  WHERE   id = custid;

 

  SELECT  status   INTO m_status   from Newyorlk.CUSTOMER_INVOICE

  WHERE   id = invoice;

  

 m_display := m_display||'-'|| m_status  ;

 

   RETURN m_display;

  END;

$$

  LANGUAGE 'plpgsql' VOLATILE;

--------------------------------------------------------------------

 

In the above function if I change Newyorlk.CUSTOMER  to CUSTOMER . It gives
a runtime error saying table not available.

I think when I remove the schema name, posgresSql checks the table in the
public schema.

 

But in Oracle, when we give the schema name with the function name, it
assumes all the objects within the functions are referring to that schema.

Do you know any other way to do a user define function, without hard cording
schema name each time when referring to a table.

 

Thanks in Advance

Lathika

 

 

Responses

pgsql-admin by date

Next:From: Gnanavel SDate: 2005-07-27 07:08:49
Subject: Re: User Define Functions
Previous:From: Simon RiggsDate: 2005-07-26 22:22:34
Subject: Checkpoint segments

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group