Tables with oid - Mailing list pgsql-general

From Fandarel
Subject Tables with oid
Date
Msg-id 199807161848.OAA25102@hub.org
Whole thread Raw
List pgsql-general
I'm having some trouble using tables with oids:

I created a table using the following command:
CREATE TABLE registry_blob_t (
  registry_key    varchar(1024)  NOT NULL,
  registry_value  oid            NOT NULL
);

I then tried to insert a value to it using the DBD::Pg interface for perl:
$dbh->do("INSERT INTO registry_blob_t (registry_key, registry_value)
VALUES (user.bob.name.middle, lo_import('/path/file_name') )");

where /path is the path to the file and /file_name is the name of the
file with my data to insert.

I got back this error:
"ERROR:  user: Table does not exist."

I tried changing "registry_key" to "thing" to see what happened and I got:
"ERROR:  Relation registry_blob_t does not have attribute thing"
so, it can find the table when the sql statement is wrong.

I checked the example for blobs that came with DBD::Pg and used all of
the same code except where the example had an id field of int4 I created
one with varchar(1024). I got the same error so I tried changing the id
field to int4 and it worked.

Can a table with oids deal with varchar(x)'s or can I just not reference
values to keys of type varchar(x)?

At this point, I'll have to do a workaround with an extra table
referencing my varchar(x) key to the int4 key that the table seems to
need.

Thanks,
Matt Vanderpol

pgsql-general by date:

Previous
From: "Ryan Mchale"
Date:
Subject: listing all tables
Next
From: Fandarel
Date:
Subject: Re: [GENERAL] listing all tables