Re: Strange behavior of plpgsql. - Mailing list pgsql-novice

From Tom Lane
Subject Re: Strange behavior of plpgsql.
Date
Msg-id 8325.1257519776@sss.pgh.pa.us
Whole thread Raw
In response to Strange behavior of plpgsql.  (Alex du Plessis <alexdup.main@gmail.com>)
List pgsql-novice
Alex du Plessis <alexdup.main@gmail.com> writes:
> However, it seems that plsql rather has a problem with the double dot i.e.
> NEW.amount.direction and could not parse that (or did not have any knowledge
> of the complex type).

You would have a problem with that with an ordinary table reference,
too, though plpgsql is probably a bit worse about providing a useful
error message :-(.  The trick is that you need to parenthesize:
    (NEW.amount).direction
With three components in the name, the parser is thinking that it
must be schema.table.column, and NEW isn't a schema name.  With
the parentheses in place, the name is correctly resolved as a column
of NEW, and then since it's a composite you can extract a field.

            regards, tom lane

pgsql-novice by date:

Previous
From: CBoone@SperianProtection.com
Date:
Subject: Postgre 8.1.11 and Windows 7 (64-bit)
Next
From: Michael Lush
Date:
Subject: how does psql know where to go?