Advanced Datatypes
JDBC
1.x supported the
SQL2 datatypes. JDBC 2.0 introduces
support for more advanced datatypes, including the SQL3
“object” types and direct persistence of Java objects.
Except for the BLOB and CLOB
datatypes, few of these advanced datatype features are likely to be
relevant to most programmers for a few years. While they are
important features for bridging the gap between the object and
relational paradigms, they are light years ahead of where database
vendors are with relational technology and how people use relational
technology today.
Blobs and Clobs
Stars of a bad horror film? No. These are the two most important
datatypes introduced by JDBC 2.0. A blob is a B
inary Large Object,
and a clob is a C
haracter
Large Object. In other words, they are two datatypes
designed to hold really large amounts of data. Blobs, represented by
the BLOB datatype, hold large amounts of binary
data. Similarly, clobs, represented by the CLOB
datatype, hold large amounts of text data.
You may wonder why these two datatypes are so important when SQL2
already provides
VARCHAR
and
VARBINARY
datatypes. These two old datatypes have two important implementation problems that make them impractical for large amounts of data. First, they tend to have rather small maximum data sizes. Second, you retrieve them from the database all at once. While the first problem is more of a tactical issue (those maximum sizes are arbitrary), the second problem is more serious. Fields with sizes of 100 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access