PL/PGSQL and drop/create table
| От | Teodor Sigaev |
|---|---|
| Тема | PL/PGSQL and drop/create table |
| Дата | |
| Msg-id | 431ED429.9080501@sigaev.ru обсуждение исходный текст |
| Ответы |
Re: PL/PGSQL and drop/create table
|
| Список | pgsql-hackers |
# create table foo ( bar int ); CREATE TABLE # create or replace function func (int) returns int as $$ DECLARE IID alias for $1; CNT int; BEGIN select into CNT count(*) from foo where bar = IID; RETURN CNT; END; $$ language plpgsql; CREATE FUNCTION # select func(1); func ------ 0 (1 row) # drop table foo; DROP TABLE # create table foo ( bar int ); CREATE TABLE # select func(1); ERROR: relation with OID 16628 does not exist CONTEXT: SQL statement "SELECT count(*) from foo where bar = $1 " PL/pgSQL function "func" line 5 at select into variables After reconnecting to database all is ok. Is it supposed behaviour? -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
В списке pgsql-hackers по дате отправления: