Nested composite types again

From: Michael Kolomeitsev <mkolomeitsev(at)gmail(dot)com>
To: pgsql-novice(at)postgresql(dot)org
Subject: Nested composite types again
Date: 2012-11-28 11:02:47
Message-ID: CAABbzO3RJb_4sobpkNy3hE2JZXZuWAGwy6Fr_bqvdM+0C5KJbQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Hi,

I have already read this
http://www.postgresql.org/docs/9.2/static/rowtypes.html#AEN7304
but it didn't help.

CREATE TABLE nodes (
id SERIAL NOT NULL PRIMARY KEY,
name TEXT NOT NULL
);

CREATE TYPE pathId AS (
id INTEGER,
node nodes
);

CREATE OR REPLACE FUNCTION test_AEN7304() RETURNS void AS $$
DECLARE
r pathId;
n nodes;
BEGIN
n.name := 'abc';
r.id := 1;
r.node := n; -- All is ok
-- r.node.name := 'def'; -- << Error here
-- (r).node.name := 'def'; -- << and here
((r).node).name := 'def'; -- << and here
END;
$$ LANGUAGE 'plpgsql';

And I can't even make 'n' as ALIAS FOR r.node (to simulate C-like pointer).

What is the right syntax?
Thanks

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Vibhor Kumar 2012-11-28 15:37:07 Re: Nested composite types again
Previous Message Gavan Schneider 2012-11-26 23:57:21 Re: Curiosity: what is PostgreSQL doing with data when "nothing" is happening?