在 Oracle 10g 中将两个单元格合并为一个时创建的无效字符有问题。
然后将该字符串插入到 xml 文件中,如果插入了无效字符,则会破坏 xml 文件。(XML 可以高达 8gb,而且很难修复,所以我需要在每天创建 xml 之前自动运行它。
我一直在做的是找到一个版本,如下所示。
select * from (select ar_journal.jnlinpnum,debtor_ref,dump(narration) as dn,narration from ENERGYDB.ar_journal) where dn like '%31%' and dn not like '%=31:%';
但是,这只会带回一个字符,并且会出现很多字符,需要删除字符 0 - 31 和 226 - 256。
所以我尝试了这个,
create table tmp_charprefix(
charf1 Varchar2 (10), charf2 varchar2 (10)) ;
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%27%', '%=27%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%28%', '%=28%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%29%', '%=29%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%30%', '%=30%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%31%', '%=31%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%60%', '%=60%');
INSERT INTO tmp_charprefix (charf1, charf2) VALUES ('%62%', '%=62%');
以上是我要寻找的价值观。
create table tmp_charfix as
select aj.jnlinpnum, aj.type_jnl, ajt.jnl_descr, ajei.reason_no, ar.reason_descr, aj.narration
from ar_journal aj, ar_jnl_type ajt, ar_jnl_extra_info ajei, ar_reason ar
where ajt.type_jnl = aj.type_jnl
and ajei.jnlinpnum = aj.jnlinpnum
and ajei.reason_no = ar.reason_no
and aj.jnlinpnum in ( select jnlinpnum from (
select ar_journal.jnlinpnum, debtor_ref, dump(narration) as dn, narration from energydb.ar_journal)
where dn like (select charf1 from tmp_charprefix tmo)
and dn not like (select charf2 from tmp_charprefix tmt)
and substr(tmo.charf1,2,8) = substr(tmt.charf2,3,8) ;
-- 试图调用 charf1 的子串并将其与 charf2 的子串匹配
我收到以下错误,但我不确定我是否在最后一行做一些可能的事情
SQL Error: ORA-00907: missing right parenthesis
00907. 00000 - "missing right parenthesis"
*Cause:
*Action:
任何帮助将不胜感激,在过去的几个小时里,我一直坚持这一点。
谢谢,
本