Re: Inputting columns of data

From: Richard Huxton <dev(at)archonet(dot)com>
To: "C G" <csgcsg39(at)hotmail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Inputting columns of data
Date: 2004-02-16 16:46:22
Message-ID: 200402161646.22084.dev@archonet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Monday 16 February 2004 15:46, C G wrote:
> Dear All,
>
> I have a text file with data like:
> 1 2 3
> 4 5 6
> 7 8 9
> i.e. so I have three columns of numbers.
>
> I wish to put this data into a table. However, I do not want it to take up
> three rows, rather only a single row and a single column. I was think
> something like this
>
> CREATE TABLE t1(data numeric[]);
> INSERT INTO TABLE t1 VALUES ('{1 4 7, 2 5 8, 3 6 9}')
>
> but this does not work.

I'm not sure what you thought it would do - this is supposed to be a three
element array of what type?
Oh - you don't need the "TABLE" on the insert either.

> What's the best way of approaching this problem? All the files I'll put
> into the table will not have the same number of columns, or be the same
> length. I would only like to access a single column of data, but never a
> single number.

Define your table:
CREATE TABLE t1 (data text);
INSERT INTO t1 VALUES ('1 2 3 4 5 6 7 8 9');

That'll store pretty much anything you like. If you need null values you might
want to investigate bytea type.

On the other hand, that's a poor way of using a relational database - can you
explain what you are trying to achieve? Someone might have a better way to do
it.
--
Richard Huxton
Archonet Ltd

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Marc Cuypers 2004-02-16 16:56:03 Fosdem
Previous Message Tom Lane 2004-02-16 16:40:39 Re: PGSQL C API()