Re: Large Object => invalid input syntax for integer: "" - Mailing list pgsql-general

From Douglas McNaught
Subject Re: Large Object => invalid input syntax for integer: ""
Date
Msg-id m2zmu33brw.fsf@Douglas-McNaughts-Powerbook.local
Whole thread Raw
In response to Large Object => invalid input syntax for integer: ""  (grupos <grupos@carvalhaes.net>)
Responses Re: Large Object => invalid input syntax for integer: ""  (grupos <grupos@carvalhaes.net>)
Re: Large Object => invalid input syntax for integer: ""  (grupos <grupos@carvalhaes.net>)
List pgsql-general
grupos <grupos@carvalhaes.net> writes:

> I need to use large objects BUT I am having problemns... I instaled
> PostgreSQL 8.0.3 windows version with lo module.
>
> first, I created the table below:
> CREATE TABLE test
> (
>   description varchar(20),
>   picture lo
> )
> WITHOUT OIDS;
>
> After trying to make one insert without value for the lo I get the
> error below:
>
> INSERT INTO test VALUES (1);
>
> ERROR:  invalid input syntax for integer: ""

This means you're trying to insert an integer value into the
"description" column, which is text.  It has nothing to do with large
objects.

To insert an LO into a database, you do the following:

BEGIN a transaction
Call lo_create() to make a new large object.  The return value is the
  OID of the LO, which you will need later.
Call lo_write() and lo_close() to put data into the LO
Insert the OID you got from lo_create() in the referencing column
  ("picture", in your case)
COMMIT the transaction

It's a little annoying but that's how it works.

-Doug

pgsql-general by date:

Previous
From: Adam Witney
Date:
Subject: Re: Large Object => invalid input syntax for integer: ""
Next
From: "Surabhi Ahuja "
Date:
Subject: transactions