happylife1234
asked on
SQL*Loader-704: Internal Error: ulconnect: OCIEnvCreate [-1]
I ma new to using SQl Loader. I am trying to load a datafile into a table and am running sqlldr from my pc. I have oracle 10.2 client installed in my machine. The ORACLE_HOME and PATH is properly set.
But when I invoke sqlldr , I am getting the following msg
H:\Data>sqlldr zbc/*********@test1 control=DataLdr.ctl
SQL*Loader: Release 10.2.0.1.0 - Production on Tue Sep 1 11:08:47 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIEnvCreate [-1]
zbc is a schema in the test1 database. I am logged into the pc as say name123.
Can anyone tell me what I am doing wrong.
Thanks
But when I invoke sqlldr , I am getting the following msg
H:\Data>sqlldr zbc/*********@test1 control=DataLdr.ctl
SQL*Loader: Release 10.2.0.1.0 - Production on Tue Sep 1 11:08:47 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIEnvCreate [-1]
zbc is a schema in the test1 database. I am logged into the pc as say name123.
Can anyone tell me what I am doing wrong.
Thanks
ASKER
Yes, I can do that.
Can you show your tnsnames.ora and your sql loader control file?
also
set Oracle_sid= your sid name
and
set Oracle_home=your home
set Oracle_sid= your sid name
and
set Oracle_home=your home
ASKER
Strangely when I run the sqlldr from another machine, it works fine.
D:\Data>sqlldr zbc/********@test1 control=DataLdr.ctl
SQL*Loader: Release 10.2.0.3.0 - Production on Tue Sep 1 12:42:15 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Commit point reached - logical record count 63
Based on the other link, it looks like it could be a user privileges problem.
The DataCtr.ctl looks like -
load data
infile 'H:\Data\200931DATAX.txt'
into table dmp_temp
fields terminated by "|"
( col1, col2, col3 )
Which user should be having access to H:\Data folder.
Thanks
D:\Data>sqlldr zbc/********@test1 control=DataLdr.ctl
SQL*Loader: Release 10.2.0.3.0 - Production on Tue Sep 1 12:42:15 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Commit point reached - logical record count 63
Based on the other link, it looks like it could be a user privileges problem.
The DataCtr.ctl looks like -
load data
infile 'H:\Data\200931DATAX.txt'
into table dmp_temp
fields terminated by "|"
( col1, col2, col3 )
Which user should be having access to H:\Data folder.
Thanks
then go this folder on this specific drive and
right click
properties --security and make sure that the user looged to the terminal /which is you right now has full privil read right exec.
Note due to some windows bug even if the user is part of the admin group you have to add him by name .
then
set Oracle_sid= your sid name
and
set Oracle_home=your home
right click
properties --security and make sure that the user looged to the terminal /which is you right now has full privil read right exec.
Note due to some windows bug even if the user is part of the admin group you have to add him by name .
then
set Oracle_sid= your sid name
and
set Oracle_home=your home
Try running sqlldr from the same user you installed the software as. I agree, it may be a privs issue.
ASKER
it-rex,
I ensured that I have full access to the H:\Data folder and that I have added my name to the list of users who have access.
I have also set oracle_sid and oracle_home and it still doesnt work.
mrjoltcola,
I dont know who installed the software. I am assuming that since sqlplus works fine, sqlldr should also work regardless of who installed the client.
Any other suggestions that I can try.
Thanks
I ensured that I have full access to the H:\Data folder and that I have added my name to the list of users who have access.
I have also set oracle_sid and oracle_home and it still doesnt work.
mrjoltcola,
I dont know who installed the software. I am assuming that since sqlplus works fine, sqlldr should also work regardless of who installed the client.
Any other suggestions that I can try.
Thanks
have you verified this as per the answer
That should work if you are running this on the Oracle server (or it can work from a client PC as well if you have the Oracle database utilities installed on your PC and they are the same version of Oracle as your database). Then, this control file assumes the existing table is empty. Is that true? If not, you will have to add the keyword: "append" to your control file.
Also, the date values in your data file are in the European format: "DD/MM/YYYY" so your NLS_DATE_FORMAT will also have to be: "DD/MM/YYYY" or you will get an error due to the date value
That should work if you are running this on the Oracle server (or it can work from a client PC as well if you have the Oracle database utilities installed on your PC and they are the same version of Oracle as your database). Then, this control file assumes the existing table is empty. Is that true? If not, you will have to add the keyword: "append" to your control file.
Also, the date values in your data file are in the European format: "DD/MM/YYYY" so your NLS_DATE_FORMAT will also have to be: "DD/MM/YYYY" or you will get an error due to the date value
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
sqlplus zbc/*****@test1