是否可以使用sqldeveloper插入到oracle中的
BLOB
列?
即像这样的东西:
insert into mytable(id, myblob) values (1,'some magic here');
要将
VARCHAR2
插入到 BLOB
列中,您可以依赖函数 utl_raw.cast_to_raw
,如下所示:
insert into mytable(id, myblob) values (1, utl_raw.cast_to_raw('some magic here'));
它会将您的输入
VARCHAR2
转换为 RAW
数据类型,而不修改其内容,然后将结果插入到您的 BLOB
列中。
utl_raw.cast_to_raw
是的,这是可能的,例如使用从 RAW 到 BLOB 的隐式转换:
insert into blob_fun values(1, hextoraw('453d7a34'));
453d7a34
是一个十六进制值的字符串,它首先显式转换为RAW数据类型,然后插入到BLOB列中。结果是 4 字节的 BLOB 值。