2011-05-12 80 views
2

我需要拒绝来自外部表格的行(每行的第一列)和一些特殊字符(例如,~\等)在CSV文件中。使用Load when子句时出现问题?

为此,我在ACCESS PARAMETERS子句中使用了LOAD WHEN子句。我一直在使用下面的语句访问参数子句中:

load when (1:1) != '~' 

但它抛出一个错误,指出“无效字符”

如果我尝试使用下面的语句,

load when (empname != '~empname') 

它抛出:

ERROR at line 1: 
ORA-29913: error in executing ODCIEXTTABLEFETCH callout 
ORA-06512: at "SYSTEM.EMP_PROCEDURE", line 101 
ORA-06512: at line 1 

该程序中的101行是select * from emp;

如何使用LOAD WHEN子句 - 任何示例?

回答

0

您是否尝试过使用代字号的ASCII值?

load when (1:1) != CHR(126) 
+0

谢谢你的建议,但荫面临着同样的问题ERROR位于第1行: ORA-29913:错误执行ODCIEXTTABLEOPEN标注 ORA-29400:数据盒错误 KUP-00554:解析访问参数时遇到错误 KUP-01005:语法错误:找到“(”:期待以下之一:“和badfile, 字节顺序标记,字符集,列,数据,分隔符,放弃文件, disable_directory_link_check,退出,字段,固定,加载,日志文件,语言 不,nodiscardfile,nobadfile,nologfile, date_cache或处理读取字符串, 字符串,跳过,“ – Raj 2011-05-13 06:17:34

+0

CONTD。,KUP-01007:在第2行第40列 ORA-06512:在”SYS.ORACLE_LOADER“,第19行 ORA-06512:在”SYSTEM“。 EMP_PROCEDURE“,第101行 ORA-06512:在第1行 – Raj 2011-05-13 06:17:51