table name as parameter in pl/psql
| От | darthxiong@libero.it |
|---|---|
| Тема | table name as parameter in pl/psql |
| Дата | |
| Msg-id | GO4DDT$IwbN_cz2aIDQkZtyjXg48hRwnNbgm9xc6SbNmYLa0qiE2gZ@libero.it обсуждение исходный текст |
| Ответы |
Re: table name as parameter in pl/psql
|
| Список | pgsql-admin |
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
В списке pgsql-admin по дате отправления: