LONG RAWs

As I stated indirectly at the beginning of the chapter, the BLOB data type has replaced the LONG RAW data type. This does not mean, however, that LONG RAW is no longer useful. There are many applications in which Oracle7 or LONGs are still in use and in which, consequently, LONG RAW is the only option for storing large amounts of binary data. Given this fact, it is valuable for you to understand how this data type can be manipulated.

Unlike the three LOB types, which you access via locators, there is no locator involved when accessing a LONG RAW. When a query selects a LONG RAW column, the data is immediately available using the getXXX( ) accessor methods. The JDBC driver transfers data for these columns between the database and the client using streams. Even if you get the data as a byte array, the driver streams the data for you.

Creating a Table with a LONG RAW

Of course, to use a LONG RAW data type, you first need to create a table that uses a LONG RAW. As I stated at the beginning of the chapter, LONGs have restrictions that the other large data types do not. One of the most important restrictions is that you can have only one LONG column in a table. When using LOBs, you can combine both the biography and photo columns in one person_information table. However, when using LONGs, you need to create two tables, one for the biography and a second for the photo. Since we’re discussing the binary LONG RAW, I’ll mention that you can create a person_photo table using the following ...

Get Java Programming with Oracle JDBC now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.