Search Postgresql Archives

plpgsql and schema

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The problem:

I've two tables, both called "test" on two different schemas, let's say schema1 and schema2.

I need to write a function like (just a simple example)

CREATE OR REPLACE FUNCTION foo()
 RETURNS int4 AS
$BODY$
declare
  num int4;
begin
   select into num count(*) from test;
  return num;
end;
$BODY$
 LANGUAGE 'plpgsql' VOLATILE;

I need something like:
SET search_path = schema1,public;
select foo();
-- get the number of rows of schema1.test


SET search_path = schema2,public;
select foo();
-- get the number of rows of schema2.test

The problem is that i get always the number of rows from the table in the schema that was current when I created the function.

How can I obtain what I need ?? I cannot write 2 different functions (my db is really more complex, with lots of functions and triggers that need this kind of access).

Thanks to everybody
Roberto



---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux