0

从 T_FILE 中选择 utl_raw.cast_to_varchar2(DCFILE) hexchar

ORA-00997: 非法使用 LONG 数据类型

select  to_char(DOC_FILE) hexchar from T_DOC_FILE

ORA-00932: 不一致的数据类型: 预期的 CHAR 得到 LONG BINARY

我的列类型 long raw,如何选择 varchar2 ?

4

1 回答 1

2

十多年前,Oracle 在 8.0 版中引入了他们的 LOB 数据类型。LONG 和 LONG RAW 自千禧年之前就已被弃用(分别支持 CLOB 和 BLOB),正是因为使用 LONG 是一件令人头疼的事情,而 LONG RAW 则加倍如此,正如您现在所发现的那样。

你到底想达到什么目的?你的逻辑似乎很混乱。LONG RAW 用于存储二进制数据(图像、文档等),因此将其呈现为文本不太可能产生令人满意的结果。

于 2010-04-15T11:46:12.373 回答