Re: What do I do with this error?
От | Stephan Szabo |
---|---|
Тема | Re: What do I do with this error? |
Дата | |
Msg-id | Pine.BSF.4.21.0103182019170.23523-100000@megazone23.bigpanda.com обсуждение исходный текст |
Ответ на | Re: What do I do with this error? ("Josh Berkus" <josh@agliodbs.com>) |
Список | pgsql-sql |
Using the below (with a few fixes, delcare->declare and adding the close quote and language type as plpgsql, and a table1 defined as id int, field1 varchar, field2 varchar, I get a NULL returned if I select test1(); I'm somewhere between beta4 and 5 though. On Sun, 18 Mar 2001, Josh Berkus wrote: > Tom, > > > Yes, I'd say so. 7.1 returns a NULL as expected ... > > Er, Tom, I'm using 7.1. > > Pgsql does return a null as expected when going from the command line. > However, if I call the regular expression from within a PL/pgSQL > function, it bombs. > > Therefore, please forward to pgsql-bugs: > > Bug Name: Regular Expressions with NULL error out in PL/pgSQL. > Can Reproduce: Reliably > Severity: Annoyance. > Location: PL/pgSQL / Function handler / SPI > Version: 7.1 beta 3 > > Description: If you attempt to run a query within a PL/pgSQL function > which compares a field. via regular expression, to a NULL variable, you > get a fatal error. > > Example: > > CREATE FUNCTION test1 () RETURNS INT4 AS > 'DELCARE > expression1 VARCHAR; > return_value INT4; > BEGIN > expression1 := NULL; > SELECT id INTO return_value > FROM table1 > WHERE field2 ~* expression1; > RETURN return_value; > END;
В списке pgsql-sql по дате отправления: