hi all, i'm trying to do something like this:
 
CREATE FUNCTION read_table(text) RETURNS int AS '
 DECLARE 
         table_name ALIAS FOR $1;
          res
  INTERGER;
 BEGIN
          SELECT INTO res COUNT(id) FROM table_name;
          RETURN res;
 END;
 ' LANGUAGE 'plpgsql';
 
using psql the creation return no errors, but the statement
 SELECT read_table( 'books' ) AS how_many;
 resuts in
 ERROR: parser: parse error at or near "$1"
 
and the same using 
SELECT INTO res COUNT(id) FROM $1;
 instead of 
SELECT INTO res COUNT(id) FROM table_name;
 while 
SELECT INTO res COUNT(id) FROM books ( the real name of the table )
 works good
 
there is a way to use a table name as parameter? where am i wrong?
 thx 
Ivan

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to