Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como consultar dados do enormeblob


DBMS_LOB.substr() é a função certa a ser usada. Certifique-se de que haja dados na coluna.

Exemplo de uso:
-- create table
CREATE TABLE myTable (
id INTEGER PRIMARY KEY,
blob_column BLOB
);

-- insert couple of rows
insert into myTable values(1,utl_raw.cast_to_raw('a long data item here'));
insert into myTable values(2,null);

-- select rows
select id, blob_column from myTable;

ID  BLOB_COLUMN
1   (BLOB)
2   null

-- select rows
select id, DBMS_LOB.substr(blob_column, 1000,1) from myTable;

ID  DBMS_LOB.SUBSTR(BLOB_COLUMN,1000,1)
1   61206C6F6E672064617461206974656D2068657265
2   null

-- select rows
select id, UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.substr(blob_column,1000,1)) from myTable;

ID  UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(BLOB_COLUMN,1000,1))
1   a long data item here
2   null