I have to load a file with a file name containing @ symbol.
i am invoking the sql loader from my java class.
Currently when i try to load a file with @ symbol in the file name, the sql loader is not able to load the file.
The SqlLoader log says:-
SQL*Loader-503: Error appending extension to file (/FileWith@Symbol.csv)
SQL*Loader-567: unable to derive file name
SQL*Loader-509: System error: Error 0
Commands sent to SqlLoader are below
String[] cmd = new String[]
{
sqlldrPath ,
user + "/" + password + "@" + sid,
"control=" + file.getAbsolutePath(),
"direct=true",
"log=" + log.getAbsolutePath() + File.separator
+ lr.getTempTable() +".log"};
String[] env = new String[]
{
"ORACLE_HOME="+oracleHome,
"LD_LIBRARY_PATH="+oracleLibPath+":"+oracleLib32Path+":$LD_LIBRARY_PATH"
};
Calling SqlLoader here with the above cmd and env string arrays.
Process p = Runtime.getRuntime().exec(cmd, env);
I found SQLLoader with a password that contains @-signs
which talks about escaping @ sign in the password but is it possible to escape @ sign if it is in the file name?
Thank you.