如何在Oracle中将特殊字符(如'#')转换为RAW格式?我需要它在这样的blob中进行搜索。
以下代码为我提供了表格中的所有行
dbms_lob.instr(gob_a_document, utl_raw.cast_to_raw('C#')) <> 0)
或者有更好的方法吗?
答案 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语句中的其他行?