PLPGSQL bug in implicit SELECT

Поиск
Список
Период
Сортировка
От Kovacs Zoltan
Тема PLPGSQL bug in implicit SELECT
Дата
Msg-id Pine.LNX.4.21.0108161936210.26864-100000@pc10.radnoti-szeged.sulinet.hu
обсуждение исходный текст
Ответы Re: PLPGSQL bug in implicit SELECT  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
After more than 3 months of hard testing I found a small bug in
PLPGSQL. (It works _too_ fine due to your excellent work... :-) Thanks!)

Consider this function:

CREATE FUNCTION testfunc () RETURNS int4 AS '
declare ret int4;
begin ret := column1 FROM table WHERE column2 LIKE ''%anything%''ORDER BY column3 LIMIT 1; return ret;
end;
' LANGUAGE 'PLPGSQL';

Unfortunately I'm getting

testdb=# select testfunc();
ERROR:  query "SELECT  column1 FROM table WHERE column2 LIKE '%anything%'
ORDER BY column3 LIMIT 1" returned more than one column

In psql there is no such problem. My PostgreSQL version is "PostgreSQL
7.1.1 on i686-pc-linux-gnu, compiled by GCC egcs-2.91.66" patched with
four small patches (in fact I almost have a 7.1.2).

My workaround for the test function is:

CREATE FUNCTION testfunc () RETURNS int4 AS '
declare ret int4;
begin SELECT column1 into ret FROM table WHERE column2 LIKE ''%anything%''ORDER BY column3 LIMIT 1; return ret;
end;
' LANGUAGE 'PLPGSQL';

Is this bug a reported one?

Regards,
Zoltan

--                         Kov\'acs, Zolt\'an                        kovacsz@pc10.radnoti-szeged.sulinet.hu
          http://www.math.u-szeged.hu/~kovzol                        ftp://pc10.radnoti-szeged.sulinet.hu/home/kovacsz
 



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Patches (current CVS) for changes if index AM tables
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Dollar in identifiers