Re: types used for JDBC BLOB and CLOB?

From: "David Wall" <d(dot)wall(at)computer(dot)org>
To: "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>
Cc: <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: types used for JDBC BLOB and CLOB?
Date: 2004-08-23 22:18:13
Message-ID: 089c01c4895f$14ff2360$3201a8c0@rasta
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

If you want to use the BLOB JDBC calls, you will use the OID type for the
field in your table schema.

You do NOT need to use the lo_ routines since they will be called for you if
you use the JDBC BLOB calls.

David

----- Original Message -----
From: "Marc G. Fournier" <scrappy(at)postgresql(dot)org>
To: "Barry Lind" <blind(at)xythos(dot)com>
Cc: "Marc G. Fournier" <scrappy(at)postgresql(dot)org>; <pgsql-jdbc(at)postgresql(dot)org>
Sent: Monday, August 23, 2004 3:06 PM
Subject: Re: [JDBC] types used for JDBC BLOB and CLOB?

>
> k .. I'm obviously missing something, and having never used BLOBs before,
> I'm not surprised ...
>
> Looking at:
>
> http://www.postgresql.org/docs/7.4/static/lo-implementation.html
>
> It states:
>
> "The large object implementation breaks large objects up into "chunks" and
> stores the chunks in rows in the database."
>
> When I create my schema for this, what type do I assign the field? Or is
> there a special 'table' created when you do the lo_creat to store the
> BLOBs in? (looking at docs, which references the libpq library vs JDBC,
> sorry)
>
> For instance, I notice in:
>
> http://www.postgresql.org/docs/7.4/static/lo-interfaces.html
>
> "Oid lo_creat(PGconn *conn, int mode);"
>
> So, lo_creat returns an OID ... is that what I'd store in a table, and
> when I needed the value, would call lo_open to actually access it as I
> need?
>
> The part that is confusing me is the point about 'chunks' above ...
from
> that, it seems that the data is stored in table within the database ...
> but if so, what type does one define to store it in? how would a
> 'pg_dump' show the schema?
>
> Hopefully this explains a bit better my confusion here :(
>
>
> On Mon, 23 Aug 2004, Barry Lind wrote:
>
> > Marc,
> >
> > The answer is it depends, but if they intend to use the jdbc BLOB/CLOB
> > interface it is server side LargeObjects, not bytea. However you can
> > use bytea, but then you need to use the get/setXXXStream() interfaces.
> >
> > Thanks,
> > --Barry
> >
> > -----Original Message-----
> > From: Marc G. Fournier [mailto:scrappy(at)postgresql(dot)org]
> > Sent: Monday, August 23, 2004 11:52 AM
> > To: Barry Lind
> > Cc: Marc G. Fournier; pgsql-jdbc(at)postgresql(dot)org
> > Subject: RE: [JDBC] types used for JDBC BLOB and CLOB?
> >
> >
> > 'k, I believe what the client is wanting to know is what the storage
> > type would be on the backend, that the would BLOB/CLOB map to ... bytea?
> >
> > On Mon, 23 Aug 2004, Barry Lind wrote:
> >
> >> Marc,
> >>
> >> If you are specifically talking about the JDBC types BLOB and CLOB
> >> those classes use the server LargeObject interface. If you are
> >> speaking generically about support for large objects then the jdbc
> >> driver supports the bytea datatype for the get/setBinaryStream()
> >> methods. So the answer is "it depends", on how you use the driver.
> >> The specifics for supporting binary objects are documented in a
> >> section on this topic in the postgresql jdbc driver documentation
> > chapter.
> >>
> >> Thanks,
> >> --Barry
> >>
> >> -----Original Message-----
> >> From: Marc G. Fournier [mailto:scrappy(at)postgresql(dot)org]
> >> Sent: Monday, August 23, 2004 8:44 AM
> >> To: pgsql-jdbc(at)postgresql(dot)org
> >> Subject: [JDBC] types used for JDBC BLOB and CLOB?
> >>
> >>
> >> Just been asked this, and I'm not sure of the answer ... based on
> >> reading the docs on bytea, I'm assuming that it is such, but can
> >> someone please confirm?
> >>
> >> Thanks ...
> >>
> >> ----
> >> Marc G. Fournier Hub.Org Networking Services
> >> (http://www.hub.org)
> >> Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ:
> >> 7615664
> >>
> >> ---------------------------(end of
> >> broadcast)---------------------------
> >> TIP 7: don't forget to increase your free space map settings
> >>
> >>
> >
> > ----
> > Marc G. Fournier Hub.Org Networking Services
> > (http://www.hub.org)
> > Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ:
> > 7615664
> >
> >
>
> ----
> Marc G. Fournier Hub.Org Networking Services
(http://www.hub.org)
> Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ:
7615664
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Marc G. Fournier 2004-08-24 02:05:38 Re: types used for JDBC BLOB and CLOB?
Previous Message Marc G. Fournier 2004-08-23 22:06:44 Re: types used for JDBC BLOB and CLOB?