Databases kunnen ook gebruikt worden om grote objecten naar weg te schrijven.
Hierbij kunnen we kijken naar foto’s, documenten, geluid fragmenten en video fragmenten, … Om met deze grote objecten te kunnen omgaan, zijn er in SQL de datatypen CLOB, BLOB, LONGVARBINARY, …
Met JDBC kunnen we deze objecten ook wegschrijven en ophalen.
Het lezen van deze objecten uit een databank kan met de interfaces Clob (Charachter Large Object) en BLOB (Binary Large Object). Deze is compatibel met JDBC 2.0+
Hierbij werden de ResultSets uitgebreid met de methoden getClob() en getBlob().
Beide objecten (CLOB en BLOB) hebben intern een inputstream die kan opgevraagd worden en de inhoud kan weergegeven worden.
Het wegschrijven van deze objecten heeft ook weer nood aan een CLOB of BLOB object. Bij een preparedStatement kan men zo de methoden setClob() en setBlob() gebruiken om deze grote objecten weg te schrijven naar de database.
Om een lege CLOB of BLOB te maken, kan er gebruik gemaakt worden van de createClob() en createBlob() methoden. Deze zullen dan een lege instantie aanmaken van het respectievelijke object die dan kan gevuld worden.
Indien zo een object niet tot de mogelijkheden behoort, kan er een InputStream of een Reader worden toegevoegd aan het preparedStatement met de methoden setBinaryStream()of setCharachterStream(). De gegevens worden dan rechtstreeks van deze inputstream of reader gelezen.