Array Problem

Started by John Burskiover 25 years ago3 messagesgeneral
Jump to latest
#1John Burski
John.Burski@911ep.com

I'm working with version 6.5.2 and I've created a test table that
contains both a one and a two dimensional array.

CREATE TABLE testa (
name text,
links int2[],
vals int2[][] );

I'v populated the table with at least one record, so I should be able
run 'select' requests that deliver something *meaningful*.

If I select everything or specify an entire array, the query works OK.

SELECT name, links FROM testa; # OK

If I specify a particular array subscipt, for example:

SELECT name, links[1] FROM testa;

I get an error message that says:

ERROR: Unable to locate type name 'vals' in catalog

Yet the documentation seems to indicate that this is a valid *select*
statement.

Any suggestions? Upgrading to 7.0 is not an option at the present time.

Thanks.

--
John Burski
Lead Programmer
911 Emergency Products, Inc.
St. Cloud, MN 56301

#2Stephan Szabo
sszabo@megazone23.bigpanda.com
In reply to: John Burski (#1)
Re: Array Problem

On Wed, 1 Nov 2000, John Burski wrote:

I'm working with version 6.5.2 and I've created a test table that
contains both a one and a two dimensional array.

CREATE TABLE testa (
name text,
links int2[],
vals int2[][] );

I'v populated the table with at least one record, so I should be able
run 'select' requests that deliver something *meaningful*.

If I select everything or specify an entire array, the query works OK.

SELECT name, links FROM testa; # OK

If I specify a particular array subscipt, for example:

SELECT name, links[1] FROM testa;

I get an error message that says:

ERROR: Unable to locate type name 'vals' in catalog

Yet the documentation seems to indicate that this is a valid *select*
statement.

Since I don't have 6.5 floating around anymore I can't check it. I do
see that it works on CVS sources and on 7.0. My guess is that it was
a bug fixed between versions. If you can't go up to 7.0, you might
see about trying 6.5.3 just to see if a fix was backpatched.

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: John Burski (#1)
Re: [NOVICE] Array Problem

John Burski <John.Burski@911ep.com> writes:

If I specify a particular array subscipt, for example:
SELECT name, links[1] FROM testa;
I get an error message that says:
ERROR: Unable to locate type name 'vals' in catalog

In 6.5.* and earlier, you have to write out "testa.links[1]", IIRC.

Any suggestions? Upgrading to 7.0 is not an option at the present time.

The above is just one of a depressingly large number of array-related
bugs fixed in 7.0. Not to mention a lot of non-array-related bugs fixed
in 7.0. I strongly recommend that you update.

regards, tom lane