Database – What is a CLOB?

This article has been published [fromdate]


CLOB, short for "Character Large OBject", is a data type used to store and retrieve large amounts of text data in character format.

Other Definitions


Apache Derby (10.4)

A CLOB (character large object) value can be up to 2,147,483,647 characters long. A CLOB is used to store unicode character-based data, such as large documents in any character set. Length is specified in characters (unicode) for CLOB.



CLOB is a large character object stored as a column value in a row of a [gs database] table. A Clob object contains a logical pointer to a CLOB, not the CLOB itself.



CLOB: An acronym for character large object. A CLOB is a pure character-based large object in a database. It can be a large text file: HTML, RTF or other character-based file. CLOBs can be up 2 GB in size.


CLOB: (Character Large OBject) A database field that holds a large amount of text (character data). Also known as a "memo field" in some database programs. A DBCLOB is a "Double Byte" CLOB that supports two-byte Unicode characters.



A CLOB can store up to 128 terabytes of character data in the database.

The text data in a CLOB field can sit in a separate tablespace from the table that references it. However, if the character string is less than 4000 bytes, by default it gets stored "inline" (with the rest of the field values in the row).

CLOBs store database character set data; in comparison, NCLOBs (for Oracle Database) store Unicode National character set data. (For non-Oracle databases, NCLOB might be defined as a CLOB with a UNICODE character set.)

Storing varying-width LOB data in a fixed-width character set internally enables a database to provide efficient storage and manipulation of large blocks of unstructured text data. Hence the character-based random access on CLOBs.

CLOBs can participate fully in transactions. Changes made to a CLOB value can be committed or rolled back. However, CLOB locators cannot span transactions or sessions.