在Oracle中将特殊字符转换为RAW格式

时间:2012-02-28 13:09:38

标签: sql oracle character-encoding oracle10g

如何在Oracle中将特殊字符(如'#')转换为RAW格式?我需要它在这样的blob中进行搜索。

以下代码为我提供了表格中的所有行

dbms_lob.instr(gob_a_document, utl_raw.cast_to_raw('C#')) <> 0)

或者有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

我尝试了你的代码,我认为这条线是正确的。在Oracle 11.2.0.1上,我使用您的代码执行基本相同的操作:

select v.* 
from   V_INCOMING_MAIL v 
where  dbms_lob.instr(v.message_text, utl_raw.cast_to_raw('C#'),1,1) <> 0;

在视图中选择了15行中的9行。从这些行和其他行的特别抽样来看,这似乎工作正常。

那么,问题可能在于SQL语句中的其他行?