This content has been marked as final. Show 12 replies
When we faced this problem, we found that sqlloader was only available on our database tier (you could always install a database oracle home without an instance on your middle tier machine if you are on linux/unix).
We found some code from the database forum for something called xhost, which used a java call to create a version of host that started a session on the database tier. If you search for 'xhost' you should find it.
We used this to start a sqlloader session.
Thank you, but our environment is on windows NT and we have sqlldr on the previous iSuites/bin. Do you think, is it due to the older version or some path problem? Do we need to install a new client version?
forms 6i, 6iAS.
forms 10g, 10g AS.
Both old and new versions are on the same machine as we are doing the development.
I have a similar system running under window2000/2003 that I do the same thing for.
The Application Server and the database run on separate machines. The sqlldr executable is only found, as far as I can see on the database oracle_home, so have to use this xhost facility.
I think, I did not make it clear, Sorry for that.
Actually, sqlldr is on the application server and running fine with the 6i, as the respective control, data and log files were on the same machine. Now, we upgraded to forms 10g and trying to use the same sqlldr, but found that it is not being invoked at all.
We first suspected the host command, but we are able to create a directory as follows,
This is working fine. But not sqlldr... I searched on metalink if there are any links on the issue but able to find the same problem unanswered.
I will try for xhost facility...
Have you tried writing a script that sets up all of the necessary environment variables then invoke it with cmd.exe
eg host('c:\WINDOWS\system32\CMD.EXE /c c:\temp\script.cmd');
we tried to include it in a .cmd file and tried to call host command. It was giving the following error,
'sqlldr' is not recognized as an internal or external command,
operable program or batch file.
Later we tried to give the entire path in the .cmd file and tried to execute. It was giving the following error,
Message 2100 not found; No message file for product=RDBMS, facility=ULMessage 2100 not found; No message file for product=RDBMS, facility=UL
we found that oracle_home is not set properly. Then we changed the oracle_home and tried still no success.
Any other alternatives????
No. Just keep digging.
It seems like the environment for/in your .cmd file is not setup properly.
Check ORACLE_HOME once again, or PATH or maybe even TNS_ADMIN or ..
Try to run sqlldr straigth from the command line, does it work?
dito. run your .cmd file. Are there any differences in the environment settings?
Hope that helps.
Yeah, when we tried it manually it is working fine. All the available home paths were selected and tried. Thought of installing a new 10g client so that I can get another sqlldr, but NT and 2000 versions does not support that version.
As Volker says, if it will run manually, there is some PATH or environment_variable that is not set up quite right when you call it from a script.
sqlldr' is not recognized as an internal or external command, = PATH not set properly
Message 2100 not found; No message file for product=RDBM = ORACLE_HOME not set
Hopefuly you will get there
We tried to reinstall the client version into 10g AS home. Everything got corrupt. We removed the forms 6i home and installed 10g AS again and a 9i client on a different home. Now also I get the same problem. Even though I added the sqlldr path into various homes, I am getting the same error. :-(
:-) We found out the solution finally. Unset the ORACLE_HOME, then it will work automatically. Thank you all for your suggestions.
Happy Weekend!!! :-)
I'm also facing the same problem (forms 10g and sqlloader).
Please suggest me the solution? i,e how to unset the ORACLE_HOME.
thanks and regards