Tema : Interbase / Firebird
Descripción : Uso de campos de tipo BLOB
Introducción :
InterBase fue la base de datos pionera en el uso de los campos de tipo Blob, un Blob de InterBase o Firebird puede considerarse como una secuencia de bytes arbitrariamente larga que puede manipularse dentro de una transacción.
El nombre blob no significa nada, no definido originalmente como acrónimo para
Binary
Large
Object, o
Basic
Large
Object, el nombre realmente viene de la película de terror "The Blob", el Blob era una criatura del espacio que se comía todo lo que se le cruzaba.
Tipos de BLOB : Sub-type 0 blob : es creado por defecto cuando se usa el comando CREATE y es un sub-tipo no especificado. Es usado para almacenar información de tipo binario de un tipo no determinado.
Sub-type 1 blob : es usado para almacenar y manipular texto.
CREATE TABLE EMPLOYEES
(
NAME CHAR(20),
HISTORY BLOB SUB_TYPE TEXT
);
O
CREATE TABLE EMPLOYEES
(
NAME CHAR(20) NOT NULL PRIMARY KEY,
HISTORY BLOB SUB_TYPE 1
);
Sub-type 2 blob : es usado para almacenar BLR (Binary Language Representation), como Triggers y Procedimientos almacenados.
Sub-type definido por el usuario :
También podemos definir nuestros propios sub-tipos. Estos se definen colocando un valor negativo con el nombre del sub-tipo. Este valor puede ser completamente arbitrario. Pero debe ser negativo.
CREATE TABLE IMAGE_DATA
(
FILENAME CHAR(12) NOT NULL PRIMARY KEY,
BMP BLOB SUB_TYPE -1,
JPEG BLOB SUB_TYPE -2
);