> My question is: how can i create a table with one BLOB field, in a DBMS
> independent way?
>
> I am using PostgreSQL7.1 and Oracle 8 but I want to make it be able to work
> with other DBMSs.
It is difficult, because:
* Different versions of SQL use different names for the BLOB type.
* Some DBMS don't support blobs at all.
* Some DBMS treat blobs differently to other SQL types and require you to use special APIs to access them.
* Not all JDBC drivers support the JDBC 2.0 Blob APIs. Of those that do, many implement them in part only.
Given this mess, you've got two choices:
* Define a Java interface for all of your database interactions. Create a different implementation for each DBMS
youplan to support, complete with embedded SQL statements, table schemas, etc.
* Define wrapper classes for JDBC, and try to isolate the DBMS differences in "adapters". This (more or less)
allowsyou to share SQL statements / table schemas across DBMS, but it is kind of hard getting the wrapper /
adapterAPIs right.
-- Steve