SQL*Loader-704 Error
Hi, I'm trying to get a simple PHP page working on the pre-compiled HP-UX Apache Server(Itanium Build), that calls a Unix script which in turn submits a job. In this process SQL*Loader is called, and while it works just fine when I'm in the Unix prompt, when I try it from the PHP Page, it fails with the following error:
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach[0]
ORA-30136: Drop-in compatibility is not supported for this application
Any thoughts?
Also: PHP version is 5.2.0 if it matters, and oci8 is being included and is functioning properly.
...Ugh, it was working for about 5 seconds on my test page, but now it's just giving me an exit status of 137(Anyone have any clue what this means? I can't find anything that tells me what these exit number means and it's really starting to bug me) after I commented and uncommented a few lines to check to see what caused it to work...Hah! Works again. New Question time:
LD_PRELOAD, what does this variable have to do with SQL*Loader, since I'm using it in the apache start-up to do some stuff with oci8[No idea if it's necessary] and when I, assumedly, set it to "null" it works, but when it keeps my initial value it breaks and gives me my 137 error status with my original errors.
Similar Messages
-
Hello.
We run an application with an Oracle backend. Everything seems to work. There arer some Perl scripts we run to update the database. One does not work. We get.
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12535: TNS:operation timed out
We are using Solaris 9
Oracle 9.2i
Any help would be appreciated.
Thanks
JohnHave you checked the sqlnet.log file for an indication of the underlying error? You can also enable network tracing in the sqlnet.ora file, by setting trace_level_client=16.
-
Sql@loader-704 and ORA-12154: error messages when trying to load data with SQL Loader
I have a data base with two tables that is used by Apex 4.2. One table has 800,000 records . The other has 7 million records
The client recently upgraded from Apex 3.2 to Apex 4.2 . We exported/imported the data to the new location with no problems
The source of the data is an old mainframe system; I needed to make changes to the source data and then load the tables.
The first time I loaded the data i did it from a command line with SQL loader
Now when I try to load the data I get this message:
sql@loader-704 Internal error: ulconnect OCISERVERATTACH
ORA-12154: tns:could not resolve the connect identifier specified
I've searched for postings on these error message and they all seem to say that SQL Ldr can't find my TNSNAMES file.
I am able to connect and load data with SQL Developer; so SQL developer is able to find the TNSNAMES file
However SQL Developer will not let me load a file this big
I have also tried to load the file within Apex (SQL Workshop/ Utilities) but again, the file is too big.
So it seems like SQL Loader is the only option
I did find one post online that said to set an environment variable with the path to the TNSNAMES file, but that didn't work..
Not sure what else to try or where to look
thanksHi,
You must have more than one tnsnames file or multiple installations of oracle. What i suggest you do (as I'm sure will be mentioned in ed's link that you were already pointed at) is the following (* i assume you are on windows?)
open a command prompt
set TNS_ADMIN=PATH_TO_DIRECTOT_THAT_CONTAINS_CORRECT_TNSNAMES_FILE (i.e. something like set TNS_ADMIN=c:\oracle\network\admin)
This will tell oracle use the config files you find here and no others
then try sqlldr user/pass@db (in the same dos window)
see if that connects and let us know.
Cheers,
Harry
http://dbaharrison.blogspot.com -
Hi,
running SQL*Loader (Release 8.1.7.2.1) causes an error "SQL*Loader-704: Internal error: Maximum record length must be <= [10000000]". This error occurs when SQLLoader is trying to load several thousand records into a database table. Each record is less than 250 bytes in length.
Any idea what could cause the problem?
Thanks in advance!
Ingo
And here's an extract from the log file generated by SQLLoader :
Number to load: ALL
Number to skip: 0
Errors allowed: 50
Bind array: 1360 rows, maximum of 10485760 bytes
Continuation: none specified
Path used: Conventional
Table "SYSTEM"."BASICPROFILE$1", loaded from every logical record.
Insert option in effect for this table: APPEND
TRAILING NULLCOLS option in effect
Column Name Position Len Term Encl Datatype
UUID FIRST * O(X07) CHARACTER
DOMAINID NEXT * O(X07) CHARACTER
LASTMODIFIED NEXT * O(X07) DATE DD/MM/YYYY HH24:MI:SS
ANNIVERSARY NEXT * O(X07) CHARACTER
BIRTHDAY NEXT * O(X07) CHARACTER
COMPANYNAME NEXT * O(X07) CHARACTER
DESCRIPTION NEXT * O(X07) CHARACTER
FIRSTNAME NEXT * O(X07) CHARACTER
COMPANYNAMETRANSCRIPTION NEXT * O(X07) CHARACTER
FIRSTNAMETRANSCRIPTION NEXT * O(X07) CHARACTER
GENDER NEXT * O(X07) CHARACTER
HOBBIES NEXT * O(X07) CHARACTER
HONORIFIC NEXT * O(X07) CHARACTER
JOBTITLE NEXT * O(X07) CHARACTER
KEYWORDS NEXT * O(X07) CHARACTER
LASTNAME NEXT * O(X07) CHARACTER
LASTNAMETRANSCRIPTION NEXT * O(X07) CHARACTER
NICKNAME NEXT * O(X07) CHARACTER
PREFERREDLOCALE NEXT * O(X07) CHARACTER
PREFERREDCURRENCY NEXT * O(X07) CHARACTER
PROFESSION NEXT * O(X07) CHARACTER
SECONDLASTNAME NEXT * O(X07) CHARACTER
SECONDNAME NEXT * O(X07) CHARACTER
SUFFIX NEXT * O(X07) CHARACTER
TITLE NEXT * O(X07) CHARACTER
CONFIRMATION NEXT * O(X07) CHARACTER
DEFAULTADDRESSID NEXT * O(X07) CHARACTER
BUSINESSPARTNERNO NEXT * O(X07) CHARACTER
TYPECODE NEXT * O(X07) CHARACTER
OCA NEXT * O(X07) CHARACTER
SQL*Loader-704: Internal error: Maximum record length must be <= [10000000]As a second guess, the terminator changes or goes missing at some point in the data file. If you are running on *NIX, try wc -l data_file_name. This will give a count of the number of lines (delimited by CHR(10) ) that are in the file. If this is not close to the number you expected, then that is your problem.
You could also try gradually working through the data file loading 100 records, then 200, then 300 etc. to see where it starts to fail.
HTH
John -
SQL*Loader-704: Internal error: ulconnect: OCIInitialize [1804]
I tried using MassLoader to load some data into the local database on the Oracle 9i server. MassLoader first generated the data files and then called sqlldr to load the data into the db. It failed and I received SQL*Loader-704: Internal error: ulconnect: OCIInitialize [1804]. I tried with Oracle 8i sqlldr and it worked fine. So, the problem seems to be with Oracle 9i sqlldr. Is there any fix for this or how can I investigate it? Thanks in advance.
The problem lies in permissions in $ORACLE_HOME. I had the problem and came up with two solutions. The first was to chmod 6751 sqlldr. The second I liked better was to go thru the subdirectores and insure that all of the files were marked as accessable by others. After talking with fellow dba's we changed the permissions to 755 on all directories but bin. Again this might not be the correct fix but it works
try again after changing
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
to
ORA_NLS33=$ORACLE_RDBMS/ocommon/nls/admin/data
try above solution and let us know. -
SQL*Loader-704 & ORA-12535 error , Oracle 9i AIX, Windows Client
Hi All,
I try to run SQL*Loader from Windows Client to Oracle 9i server on AIX. The control file is in the windows machine.
C:\SqlLdr user/password@myoradb control=mycontrol.ctl
(the data is 300,000 rows, on the same control file)
I get this error :
SQL*Loader-704 : Internal error : ulconnect: OCIServerAttach [0]
ORA-12535: TNS:Operation timed out.
FYI, from the same machine, TNSPing is OK, SQL*Plus run perfectly.
What is wrong here ?
Should I copy the CTL file into the AIX Server and run the SQL*Plus from AIX client console ?
Thank you for your help,
KristHave you checked the sqlnet.log file for an indication of the underlying error? You can also enable network tracing in the sqlnet.ora file, by setting trace_level_client=16.
-
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
Hi
User is getting the below error:
H:\>sqlldr ARETHYYU/FRTGEU@RSSPDT
control = H:\rag_load_reports.ctl
SQL*Loader: Release 8.1.7.3.0 - Production on Mon Mar 9 07:44:08 2009
(c) Copyright 2000 Oracle Corporation. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
Anyone pls help me in solving this issue...
Thanks,
KrThis means that the tnsname being used is not being recognized by Oracle. Check your tnsnames.ora file and see if you're using the correct connection string for the database you are trying to connect to. Furthermore, do you have more than one oracle installation on your PC? If that is the case then you should copy the correct entry and replicate it to other tnsnames.ora files. Only for the sake of knowledge, I would like to know if you are using the connection string from the sqlplus session of your PC, but you're executing SQL Loader from another machine?
-
SQL*Loader-704: Internal error: ulconnect: OCIEnvCreate [-1]
I am getting the following error on my Windows XP box:
sqlldr illumina/illumina@rmdodmsrv ivsheader2.ctl
SQL*Loader: Release 11.1.0.7.0 - Production on Wed Feb 17 13:40:02 2010
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIEnvCreate [-1]
If I try the following command it connects fine:
sqlldr illumina/illumina@rmdodmsrv ivsheader2.ctl
SQL*Loader: Release 11.1.0.7.0 - Production on Wed Feb 17 13:40:02 2010
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIEnvCreate [-1]
I have an Oracle_Home env variable set to the oracle directory.
Please helpI know its an older thread and the thread was about Oracle 10.2.x I worked on client 11.2.0.1 but I thought I can share what I did to add sqlldr to instant Oracle client.
I used Oracle instant client 11.2.0.1 with sqlplus. I also downloaded and installed the full Oracle client 11.2.0.1 to have access to the sqlldr files. I chose Custom install and only installed the utilities.
- Within the oracle instant client directory make sure that you put all sqlldr related files into a bin directory.
- Make sure you have all libraries that are needed by sqlldr copied from the full client into the bin directory. Also copy the sqlldr.exe into the bin folder.
- Copy directory nls from the full client to the instant client (especially the information in subdirectory "data" seems to be needed)
- Copy directory rdbms from the full client to the instant client. This contains the error messages. I only copied mesg/oraus.msb and mesg/ulus.msb. However, if you dont get all files you risk that you will not have meaningful error messages.
- Copy directory oracore from the full client to the instant client (especially the information in subdirectory "timezone" seem to be needed).
To find out which files sqlldr is trying to access you can use strace, truss on Unix systems or ProcessMonitor on Windows.
To run the sqlldr I needed to set the environment variable ORACLE_HOME to the instant client directory. I also created a tnsnames.ora file and set TNS_ADMIN to the directory the tnsnames.ora is located. -
Hi All,
I was running a java program which uses java runtime to call Oracle SQL Loader to load a data file inthe Data base , After loading one file sucessfully , the process stopped after giving the error -:
SQL*Loader execution exited with EX_FAIL, see logfile:SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12154: TNS:could not resolve service name
Can anyone please let me know What can be the problem . ???? Please let me know where the problem lies ?
Regards
AsifCan some one help to solve this problem????
Edited by: NanthaKumarAR on Apr 13, 2012 5:55 AM -
SQL*Loader-704: Internal error
Dear all,
I have run this command in windows
sqlplus a/b@c
it is connected successfully, I can run sql and results returned.
however, I run this sql loader command
sqlldr a/b@c control=test.ctl data=test.txt
but error is returned
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12154: TNS:could not resolve the connect identifier specified
what are the reasons and why?
thank you very much!Hi,
I had the same problem. I already fixed it!
I use two ORACLE_HOME, one for Oracle Client and one for Oracle Developer Suite 10g. The sqlplus.exe is in both BIN directories, but sqlldr is only in client's ORACLE_HOME\BIN directory.
When you run sqlplus.exe, it uses tnsnames.ora from devsuite's ORACLE_HOME\NETWORK\ADMIN, I think, it contains rows for SID=c.
When you run sqlldr.exe, it uses tnsnames.ora from client's ORACLE_HOME\NETWORK\ADMIN, I think, it does not contain rows for SID=c (my tnsnames.ora did not contain them).
Make both tnsnames.ora the same and your problem will be fixed.
Tom -
I'm trying to execute a control file.
Below is the error message
SQL*Loader: Release 10.2.0.1.0 - Production on Thu Sep 10 10:54:10 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12560: TNS:protocol adapter errorulcase4.dat
*7782 CLARK MANAGER 7839 2572.50 -10 10 12-NOV-85
*7839 KING PRESIDENT 5500.00 20 05-APR-83
*7934 MILLER CLERK 7782 920.00 10 08-MAY-80
*7566 JONES MANAGER 7839 3123.75 30 17-JUL-85
*7499 ALLEN SALESMAN 7698 1600.00 300.00 10 03-JUN-84
*7654 MARTIN SALESMAN 7698 1312.50 1400.00 30 21-DEC-85
*7658 CHAN ANALYST 7566 3450.00 20 16-FEB-84ulcase4.ctl
LOAD DATA
INFILE 'c:\data\ulcase4.dat'
DISCARDFILE 'ulcase4.dsc'
DISCARDMAX 999
REPLACE
CONTINUEIF THIS (1) = "*"
INTO TABLE emp
(empno POSITION(1:4) INTEGER EXTERNAL,
ename POSITION(6:11) CHAR,
job POSITION(13:21) CHAR,
mgr POSITION(23:26) INTEGER EXTERNAL,
sal POSITION(28:34) DECIMAL EXTERNAL,
comm POSITION(36:42) DECIMAL EXTERNAL,
deptno POSITION(44:45) INTEGER EXTERNAL,
hiredate POSITION(47:55) DATE)What could be the reason? Thanks.Thanks Solomon that worked...
I've an other issue..
When I try to run the control file, only one row is inserted into the table. what could be the reason?
below is the data from the log file.
Column Name Position Len Term Encl Datatype
EMPNO 1:4 4 CHARACTER
ENAME 6:11 6 CHARACTER
JOB 13:21 9 CHARACTER
MGR 23:26 4 CHARACTER
SAL 28:34 7 CHARACTER
COMM 36:42 7 CHARACTER
DEPTNO 44:45 2 CHARACTER
HIREDATE 47:55 9 DATE DD-MON-RR
Table EMP:
1 Row successfully loaded.
0 Rows not loaded due to data errors.
0 Rows not loaded because all WHEN clauses were failed.
0 Rows not loaded because all fields were null.
Space allocated for bind array: 4352 bytes(64 rows)
Read buffer bytes: 1048576
Total logical records skipped: 0
Total logical records read: 1
Total logical records rejected: 0
Total logical records discarded: 0 -
SQL*Loader-704 & ORA-12560
Hi my oracle friends...
I'm getting this error when trying to use sqlldr:
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12560: TNS:protocol adapter error
I'm using this control file:
LOAD DATA
INFILE 'c:\exportmysql.exp'
BADFILE 'c:\badfile.txt'
APPEND
INTO TABLE HISTORICODAF
FIELDS TERMINATED BY '|'
CODIGOHISTORICO INTEGER EXTERNAL,
CODIGODAF CHAR,
TIPORESPOSTA CHAR,
DATASISTEMA DATE 'DD/MM/YYYY HH24:MI:SS',
VELOCIDADE FLOAT EXTERNAL,
PROA FLOAT EXTERNAL,
GEOMETRY COLUMN OBJECT
SDO_GTYPE INTEGER EXTERNAL,
SDO_SRID INTEGER EXTERNAL,
SDO_POINT COLUMN OBJECT
(X FLOAT EXTERNAL,
Y FLOAT EXTERNAL)
CODIGOUSUARIO CHAR,
CODIGOEMPRESA CHAR,
CODIGOOBJETO CHAR,
DATAINICIOBUSCA DATE 'DD-MM-YYYY HH24:MI:SS',
DATAFIMBUSCA DATE 'DD-MM-YYYY HH24:MI:SS',
ESTADO CHAR,
DATAGPS DATE 'DD-MM-YYYY HH24:MI:SS',
DATAEQUIPAMENTO DATE
And I'm using the right command-line:
sqlldr userid=daf/fad control=c:\control.ctl log=c:\sqlldr.log
Another doubt is: how Oracle knows wich of my services they need to connect?
Can I pass this in sqlldr command-line parameters or control file?
Thanks 4 all...for this:
how Oracle knows wich of my services they need to connect?
Normally you have defined an environment variable called ORACLE_SID that tells oracle what instance to connect.
try doing the following for getting the value of the variable:
unix: echo $ORACLE_SID
windows: echo %ORACLE_SID%
And for the error, this is what I found, probably some one else have a different opinion:
Error: LDR 704
Text: Internal error: %s [%d]
Cause: An internal error has occurred.
Action: Make a note of the message and the number, then contact customer
support.
Message was edited by:
Delfino Nunez -
SQL*Loader-925: Error while parsing a cursor (via ocisq)
Receiving the following error message when trying to use SQLLoader (on NT) >>>
SQL*Loader-925: Error while parsing a cursor
(via ocisq)
ORA-00942: table or view does not exist
Trying to use the application for the first time, logon using userid for which sqlplus operates, and the table does exist under the user schema, as owner.
ctl and dat file are correct. Log file gives me no further detail of the errors.
Are there any configuration settings or something required for this app?
ThanksThanks Warren. I was concentrating more on the first line of the error.
You are right. The issue was of insufficient privileges. The table did not have all the necessary grants provided. -
SQL*Loader-930: Error parsing insert statement for column
we upload data on daily basis in application throug apps user and these table are invloved
1. DEV_RA_INTERFACE_LINES_ALL(owner is a apps)
2.RA_INTERFACE_LINES_ALL(owner is a AR)
we do steps
1 delete record from DEV_RA_INTERFACE_LINES_ALL table
2 delete record from RA_INTERFACE_LINES_ALL table
3 load data using sql loader with apps user
4 insert in RA_INTERFACE_LINES_ALL table
we want to change user i mean these step do dataupload user not apps
we give the proper rights to dataupload like select,delete and insert rights on these table to dataupload user but when i going to load data throug sql loader we receive error
SQL*Loader-930: Error parsing insert statement for column APPS.DEV_RA_INTERFACE_
LINES_ALL.ORIG_SYSTEM_BILL_ADDRESS_ID.
ORA-00904: "F_ORIG_SYSTEM_BILL_ADDR_REF": invalid identifier
and if i insert data through apps then done.make sure that u have no speces left
between lines.
give the path of control file path correctly. -
SQL*Loader-523 error in solaris sh script
I have a SQLLdr script that I want to call from a unix shell (sh) script. We are running on Solaris 8. When we run from the command line the Sqlldr works, when we run from within a shell script, we are getting an STD ERR -2 error. I have tried running SQLldr with the -s (silent option) and silent = all but it doesn't seem to be helping.
I pasted the error that I am getting below.
Thanks,
Greg
SQL*Loader: Release 8.1.5.0.0 - Production on Wed Jul 19 15:20:48 2000
(c) Copyright 1999 Oracle Corporation. All rights reserved.
SQL*Loader-523: error -2 writing to file (STDERR)...Ugh, it was working for about 5 seconds on my test page, but now it's just giving me an exit status of 137(Anyone have any clue what this means? I can't find anything that tells me what these exit number means and it's really starting to bug me) after I commented and uncommented a few lines to check to see what caused it to work...Hah! Works again. New Question time:
LD_PRELOAD, what does this variable have to do with SQL*Loader, since I'm using it in the apache start-up to do some stuff with oci8[No idea if it's necessary] and when I, assumedly, set it to "null" it works, but when it keeps my initial value it breaks and gives me my 137 error status with my original errors.
Maybe you are looking for
-
Could anyone show me how to file a complaint with Verizon Customer Service?
I would first like to state that this is my first time having an issue with Verizon Customer Service.In all my years of using their service, I had never run into someone that truly had no idea what they were talking about. I would like to file a comp
-
Rapportd cannot be opened because of a problem
Every time I start my computer I got this message 'Rapportd cannot be opened because of a problem' (or in Dutch: rapportd kan niet worden geopend omdat er een probleem is). Lately my computer crashes more often. I hope someone can give me a hint! Is
-
Is this compatible with any modem?
My router is going out and I was going to replace it with the Airport Express but was wondering if it works with all modems. I have DSL.
-
HR ABAP - PAYROLL - Copy existing payroll function and changes
Hello all, Required a help over an issue with HR ABAP - Payroll module. My requirement is to Copy an existing custom Payroll Function (Transaction PE04), into a new one. The existing payroll function has the code for updating payroll results in RT ta
-
MRP: how to avoid Purchase orders/ Production orders generation
Hello, I would like to know how can I avoid the generation of purchase orders / production orders for MRP execution. I am interested in knowing which are going to be my future needs for a material running the MRP, but I am not interested in generatin