In windows xp, I start sqlloader.exe to load data onto Oracle. This works great, until my password contains an @-sign, that is also used by sqlloader parameters to determine the database to connect to: sqlldr.exe userid/password@database control=ctrlfile.ctl
How can I make sqlldr.exe accept a password like p@ssword?
I tried with single/double quotes: sqlldr.exe "user/p@ssword"@database without success.
I tried to skip the whole user/password, to type it in on the console, without success.
Even google couldn't help me (though it brought me on thsi great website).
It will fail using parfile as well. You just need to escape the password with \" as follows: username/\"p@ssword\"@database
not sure why nobody posted this solution before.
Cheers,
Bernardo
Have you tried it with a parameter file? I think that would allow you to have whatever kind of password you want. From Oracle's site:
PARFILE = path_ file_name
Tells SQLLoader to read command-line parameter values from a text file. This text file is referred to as a parameter file, and contains keyword/value pairs. Usually, the keyword/value pairs are separated by line breaks. Use of the PARFILE parameter can save a lot of typing if you need to perform the same load several times, because you won't need to retype all the command-line parameters each time. There is no default extension for parameter files.*