Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我尝试将一些文本信息加载到 clob 字段中。我将遇到问题的代码简化为以下代码段:
DECLARE WS_MAIN_CHUNK RAW(12001); BEGIN WS_MAIN_CHUNK := 'Do'; END; /
它给了我错误ORA-06512 PL/SQL: numeric or value error: hex to raw conversion error。为什么字符串'Do'是一个十六进制值,我该如何修复它->只需将字符串分配给原始变量?
谢谢你的帮助
在 Oracle 中,RAW数据类型用于存储二进制数据和任何面向字节的数据。您不能直接将字符串值分配给RAW数据类型的变量。如果有这样的需要,你可以使用utl_raw包和cast_to_raw函数来做到这一点:
RAW
utl_raw
cast_to_raw
SQL> DECLARE 2 WS_MAIN_CHUNK raw(12001); 3 BEGIN 4 WS_MAIN_CHUNK := utl_raw.cast_to_raw('Do'); 5 END; 6 / PL/SQL procedure successfully completed