sql >> Databasteknik >  >> RDS >> Oracle

läs först 1 kb av en blob från oracle

DBMS_LOB.SUBSTR kommer, för en BLOB, att returnera en RAW. De flesta miljöer renderar det i hex. Du kan använda DUMP-funktionen för att visa det i vissa andra format.

select dump(dbms_lob.substr(product_image,10,1),10), 
       dump(dbms_lob.substr(product_image,10,1),16), 
       dump(dbms_lob.substr(product_image,10,1),17) 
from APEX_DEMO.DEMO_PRODUCT_INFO
where product_id = 9;

Detta returnerar de första 10 byten av BLOB i decimal (t.ex. 0-255), hex och tecken. Den senare kan slänga en del oskrivbart skräp till skärmen och, om klient- och databasteckenuppsättningarna inte matchar, genomgå någon "översättning".

Du kan använda UTL_RAW.CAST_TO_VARCHAR2 som kan ge dig vad du vill ha.

select utl_raw.cast_to_varchar2(dbms_lob.substr(product_image,10,1)) chr 
from APEX_DEMO.DEMO_PRODUCT_INFO
where product_id = 9



  1. mysql räknas in i PHP-variabeln

  2. Hur man aktiverar långsam frågeloggning i PostgreSQL

  3. Bindning av parametrar till Oracle Dynamic SQL

  4. Schemamönstersökning