Valores de prueba en columnas RAW y BLOB

En este post, se puede ver de una manera muy sencilla y rápida, cómo se pueden insertar datos de prueba en un campo de tipo RAW y BLOB sin usar el paquete DBMS_LOB de Oracle para cargar archivos reales.

Muy bien, entrando en materia, voy a crear una tabla llamada RAW_BLOB_TABLE que tendrá los dos tipos de datos que se requieren:

SQL> create table ooo.raw_blob_table (
  2    raw_column  raw(32),
  3    blob_column blob
  4  );

Table created.

Para insertar un valor en una columna de tipo RAW, se puede usar la función SYS_GUID  que se usa para generar este tipo de valores:

SQL> insert into ooo.raw_blob_table (raw_column)
  2  values (sys_guid ());

1 row created.

Ahora, para insertar datos en una columna BLOB, se puede usar el paquete UTL_RAW, específicamente el procedimiento CAST_TO_RAW:

SQL> insert into ooo.raw_blob_table (blob_column)
  2  values (utl_raw.cast_to_raw ('MetallicA is the best'));

1 row created.

Al consultar la tabla, se pueden ya ver ambos registros:

SQL> select *
  2  from   ooo.raw_blob_table;

RAW_COLUMN                               BLOB_COLUMN
---------------------------------------- --------------------------------------------------------------------------------
EBF7748CEB04596AE0430100007F5596
                                         4D6574616C6C696341206973207468652062657374

2 rows selected.

Por otro lado, también se puede usar para ambos tipos de datos la función EMPTY_BLOB que insertará un valor vacío pero respetando el tipo de datos RAW y BLOB:

SQL> insert into ooo.raw_blob_table (blob_column)
  2  values (empty_blob ());

1 row created.

SQL> insert into ooo.raw_blob_table (raw_column)
  2  values (empty_blob ());

1 row created.

Para finalmente volver a comprobar el contenido de la tabla:

SQL> select *      
  2  from   ooo.raw_blob_table;

RAW_COLUMN                               BLOB_COLUMN
---------------------------------------- --------------------------------------------------------------------------------
EBF7748CEB04596AE0430100007F5596
                                         4D6574616C6C696341206973207468652062657374

4 rows selected.

Si la información de este post te ha sido de utilidad o quieres que agregue algo más, deja por favor un comentario, contestaré a la brevedad.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: