Re: Working with Array of Composite Type

From: Jan de Visser <jan(at)de-visser(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Working with Array of Composite Type
Date: 2015-03-28 14:36:37
Message-ID: 356890269.HF6pRquxC1@wolverine
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On March 28, 2015 06:18:49 PM Alex Magnum wrote:
> Hello,
> I am struggling with finding the right way to deal with arrays of composite
> types. Bellow is an example of the general setup where I defined an image
> type to describe the image properties. A user can have mulitple images
> stored.

The canonical answer is that in almost all cases where you think you want an
array of composites, you *really* want a table join:

i.e. turn your image *type* into an image *table* with the user_id as a
foreign key.

CREATE TABLE users (
user_id serial NOT NULL,
);

CREATE TABLE image (
id smallint,
user_id int references users (user_id)
caption text,
is_primary boolean,
is_private boolean
);

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Yuri Budilov 2015-03-29 07:48:03 Re: pgadmin3 installation on Oracle Linux 6.6 64-bit ?
Previous Message Alex Magnum 2015-03-28 12:48:49 Working with Array of Composite Type