Binary large objects (BLOBs)

Binary large objects (BLOBs) are potentially very big (several GigaBytes) pieces of binary data which databases can store. Because of their potential size, they are not manipulated like any other data, and are usually not transfered to the database engine at the same time as the SQL text is transfered: first a reference to a blob is created for an existing or a new blob, and then that reference is used, before or after the statement is being executed, depending on the database engine accessed, to get or set some parts of the blob.

Libgda makes its best to hide the complexity of this and most of the time blobs can be used like any other type of values with the following limitations:

Please consult each database provider's notes and limitations for database specific rules regarding BLOBs. Also have a look at the Blobs manipulation source code example.