BLOB data type

A BLOB (binary large object) is a varying-length binary string that can be up to 2,147,483,647 characters long. Like other binary types, BLOB strings are not associated with a code page. In addition, BLOB strings do not hold character data.

The length is given in bytes for BLOB unless one of the suffixes K, M, or G is given, relating to the multiples of 1024, 1024*1024, 1024*1024*1024 respectively.

Note: Length is specified in bytes for BLOB.


{ BLOB | BINARY LARGE OBJECT } [ ( length [{K |M |G }] ) ]


A BLOB without a specified length is defaulted to two gigabytes (2,147,483,647).

Corresponding compile-time Java type


JDBC metadata type (java.sql.Types)


Use the getBlob method on the java.sql.ResultSet to retrieve a BLOB handle to the underlying data.

Related information

see Mapping of java.sql.Blob and java.sql.Clob interfaces

create table pictures(name varchar(32) not null primary key, pic blob(16M));

--find all logotype pictures
select length(pic), name from pictures where name like '%logo%';

--find all image doubles (blob comparsions)
select as double_one, as double_two
from pictures as a, pictures as b
where <
and a.pic = b.pic
order by 1,2;