Re: how to add array of objects to a record

From: "Joris Dobbelsteen" <Joris(at)familiedobbelsteen(dot)nl>
To: <dfx(at)dfx(dot)it>, <pgsql-general(at)postgresql(dot)org>
Subject: Re: how to add array of objects to a record
Date: 2008-02-03 11:15:32
Message-ID: E4953B65D9E5054AA6C227B410C56AA9C311@exchange1.joris2k.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

>-----Original Message-----
>From: pgsql-general-owner(at)postgresql(dot)org
>[mailto:pgsql-general-owner(at)postgresql(dot)org] On Behalf Of dfx
>Sent: Sunday, 3 February 2008 10:38
>To: pgsql-general(at)postgresql(dot)org
>Subject: [GENERAL] how to add array of objects to a record
>
>Hi list,
>
>Can I add an array of object to a record?
>
>For example if I have a class (or type) phone_number:
>
>create type phone_number as(
>name char(20),
>caption char(50),
>ph_num char(25));
>
>and I would like associate several (unknown number, a priori)
>phone numbers to a record "persons"
>can I create a table like this:
>
>create table persons(
>id integer,
>first_name char(50),
>family_name char(50),
>phone_numbers phone_number[])
>
>and how I have to write the insert and the select queries to
>put and get the array of phone numbers?

Its an SQL database, do not fall back to paradigms from imperative
programming languages (like C, Java, PHP, Perl, ...). Postgres is an
implementation of the relational model, which works very nice on sets.
It does not have a good concept of pointers and alike (they can be
represented, but inefficiently).

Transform you type into a table and add an "id" attribute that
references the persons table (using a foreign key). At this point you
can use regular SQL statements.

- Joris

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Enrico Sirola 2008-02-03 14:28:30 Re: arrays of floating point numbers / linear algebra operations into the DB
Previous Message vladimir konrad 2008-02-03 11:10:02 Re: [OT] "advanced" database design (long)