Oracle PL/SQL:ORA-06502将字符串分配给原始变量时出错

Oracle PL/SQL:ORA-06502将字符串分配给原始变量时出错,oracle,plsql,Oracle,Plsql,我尝试将一些文本信息加载到clob字段中。我将遇到问题的代码缩减为以下代码段: DECLARE WS_MAIN_CHUNK RAW(12001); BEGIN WS_MAIN_CHUNK := 'Do'; END; / 它给出了错误ORA-06512 PL/SQL:数值或值错误:十六进制到原始转换错误。为什么字符串“Do”是十六进制值,我如何修正它->只需将字符串赋给原始变量 Thx为您提供帮助在Oracle中,RAW数据类型用于存储二进制数据和任何面向字节的数据。不能直接将字

我尝试将一些文本信息加载到clob字段中。我将遇到问题的代码缩减为以下代码段:

DECLARE
    WS_MAIN_CHUNK RAW(12001);
BEGIN
    WS_MAIN_CHUNK := 'Do';
END;
/
它给出了错误ORA-06512 PL/SQL:数值或值错误:十六进制到原始转换错误。为什么字符串“Do”是十六进制值,我如何修正它->只需将字符串赋给原始变量


Thx为您提供帮助

在Oracle中,
RAW
数据类型用于存储二进制数据和任何面向字节的数据。不能直接将字符串值分配给
RAW
数据类型的变量。如果有这样的需要,您可以使用
utl\u raw
package和
cast\u to\u 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