Export/Import/SQL Loader :: Oracle Database 10g - Format For Control File
Jan 28, 2013
I'm studying abt SQL*Loader. All I've learn it needs to have:
1. One text input file
2.Control file
3.Bad file...
But I'm confused where to put the input file...where to put the control file in which format and in control file what should I write...
My oracle version is:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production
View 3 Replies
Mar 18, 2013
I have a flat file (student.dat delimiter %~| ) using control file (student.ctl) through sql loader. Here are the details.
student.dat
student_id, student_firstname, gender, student_lastName, student_newId
101%~|abc%~|F %~|xyz%~|110%~|
Corresponding table
Student (
Student_ID,
Student_FN,
Gender,
Student_LN
)
How do i map student_newId field to student_id field in STUDENT DB table so that new id should be inserted in student_id column. How do i specify the mapping in control file. I dont want to create a new column in student table. In control file i will specify the below, Is this a best approach?. Do we have any othe way?
STUDENT_ID *(:STUDENT_NEWID)*,
STUDENT_FN,
GENDER,
STUDENT_LNAME,
STUDENT_NEWID BOUNDFILLER
View 1 Replies
View Related
Mar 28, 2013
what is the exact use of "str '<EORD>" statement in control file ?, while populating data from .dat file into database table.
When I am trying with this option, I am able to load a single record into a database table. If I remove this statement form control file, complete records from file get populated into table. I am using Linux server for imp data with sqlloader.Also, Does there any difference to use this statement in control file on Linux server and on AIX server ? Here is the structure of my ctl file.
load data
infile 'data/EZMAIL/CDSWEB.EZMAIL.dat'
*"str '<EORD>
'"*
into table CDSWEB.EZMAIL
fields terminated by '#<EOFD>#'
trailing nullcols (
View 5 Replies
View Related
Apr 22, 2013
I need loading date formats using sqlldr. I am trying to load some data from another source into our Oracle database, however, the "date" field includes extra characters that i'm trying to deal with. For reference, I'm running Oracle 11.2 on Linux 5.7.
First, the actual date input is:
April 18, 2013 8:50:44 AM EDTI tried to input it a few ways but was unable to load it until I physically removed the "AM EDT" from the input string.
My first question is if there is a way to RTRIM and get rid of those extra characters. Either that, or I need a way to convert the "AM EDT" into our standard date format.
My control file has the following:
LASTCHANGEDAT date "Month dd, YYYY HH MI SS",This will load the data, but only if I strip out the "AM EDT" from the actual data input which is not feasible.
Also, how would I handle date that comes in as: April 18, 2013 3:50:44 PM EDT
Also, I tried the following, but it gives me a different error:
LASTCHANGEDAT "to_date(:LASTCHANGEDAT,'DD-MON-YYYY HH24:MI:SS')",
gives me error:
Record 1: Rejected - Error on table NTWKREP.INTERFACE, column LASTCHANGEDAT.
ORA-01858: a non-numeric character was found where a numeric was expected
View 5 Replies
View Related
Aug 14, 2012
I am migrating data from a Solid Database to Oracle, I am using Flat Files to do that.
1.- I download the data to flat files from Solid
2.- I move the files to Oracle server
3.- I upload the data to Oracle
Now, I have done the 90% of the data base, but I have found some tables that has description columns and in this description the users writes enters, so when I try to upload the data to Oracle SQL loader cannot recognize this characters.
Example:
'25','0.','5.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'26','0.','2.','0.','0.','0.','0.','3.','0.','0.','0.','0.','0.','',''
'27','0.','1.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'28','0.','1.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'29','0.','38.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'30','0.','13.','0.','0.','0.','0.','0.','6.','0.','6.','0.','0.','|SE RECHAZA B20CS50SNW ^M
^M
SE RECHAZAN CINCO PZAS ^M
DOS MOD. HSC15I41EH,DOS MOD. HSK15I41EH |Agregó: 06/06/2009 12:22:50
|','DEV. A PROV.'
'31','0.','50.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'32','0.','9.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
'33','0.','2.','0.','0.','0.','0.','0.','0.','0.','0.','0.','0.','',''
How can I solve this ?
View 3 Replies
View Related
Jun 24, 2013
Lots of email alerts reporting SQL Loader failures (the data is actually loading) but I want to prevent all these email alerts being fired. We have an SQL Loader script that is failing regularly with this error, however the data does end up in the tables so it must run subsequently succesfully the log files are cleared out quite quickly so it is difficult to track the errors. Why is there no filename just a.day reference in the error log file?
Below is the shell script I do not have much script experience, so I am unable to see how I can alter this...could I add some kind of exclusive lock check to see if I actually have access to the file before SQL Loader tries to Load it?
value used for ROWS parameter changed from 64 to 63 SQL*Loader-500: Unable to open file (/e2e_ms_xfer/cent01/.dat) SQL*Loader-553: file not found SQL*Loader-509: System error: No such file or directory SQL*Loader-2026: the load was aborted because SQL Loader cannot continue.
This is the full error log file SQL*Loader: Release 11.2.0.3.0 - Production on Sat Jun 15 12:17:38 2013 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. Control File: /tmp/e2e_load_ms_raw_coda.ctl Data File:
/e2e_ms_xfer/cent01/.dat Bad File: /tmp/e2e_load_ms_raw_coda.bad Discard File: /tmp/e2e_load_ms_raw_coda.dsc (Allow all discards) Number to load: ALL Number to skip: 0 Errors allowed: 50 Bind array: 64 rows, maximum of 256000 bytes Continuation: none specified Path used: Conventional Table MS_RAW_CODA, 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 -----------CODA_RECORD FIRST 4000 CHARACTER Terminator string :
[code]....
View 0 Replies
View Related
Aug 23, 2013
datapump on Windows 2003/R11.2 I have a batch file that creates a daily dump of a schema in the DATA_PUMP_DIR - However, it doesn't! The script is as follows: REM Script to perform data pump export of the user01 schema and move to the
desktop.SET CURRDATE=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2%SET CURRTIME=%TIME:~0,2%%TIME:~3,2%%time:~6,2%SET CURRTIME=%CURRTIME: =0%SET DATESTAMP=%CURRDATE%_%CURRTIME%SET DUMP_FILE=user01_EXP_%DATESTAMP%.DMPSETLOG_FILE=user01_EXP_%DATESTAMP%.LOGexpdp "sys/pwd@db as sysdba" directory=DATA_PUMP_DIR dumpfile=%DUMP_FILE% schemas=user01 logfile=%LOG_FILE% MOVE
F:Oracleproduct11.2.0dbRDBMSlog\%DUMP_FILE% C:USERSADMINISTRATORDESKTOP\%DUMP_FILE%MOVE F:Oracleproduct11.2.0dbRDBMSlog\%LOG_FILE% C:USERSADMINISTRATORDESKTOP\%LOG_FILE%
For some reason when this is run from a remote server as a batch it fails to create a file although the output from the scripts has no errors apart from move statements and the expdp output is all good (it states that the file was created in the expected location).If the expdp command is run on the server itself it is all good.
View 4 Replies
View Related
Apr 15, 2013
I'm using Oracle Database 11g R2 need to upload Telecom CDRs to the database on daily basis , it's huge data and changeable , an example of my file in linux Redhat 5 server as below ,
INDRtotalduration = 00:00:00
origin_matrix = 4186603ec003ef01
triggering_key = 665000207
Start_Date_And_Time = 03/04/2013 09:24:10
IMSI = 418666651000207
[code]......
there is no problem with this i think i can use SQLLDR to upload this file , but the problem here the positions of the columns in the file could change depending on user behavior it could be the first row comes in the third row or any row and maybe more rows appears ,
locind = 0
origin_matrix = 4186603ec003ef01
Start_Date_And_Time = 03/04/2013 09:24:10
INDRtotalduration = 00:00:00
IMSI = 418666651000207
triggering_key = 665000207
[URL].......
this is sample of the file i could be more than 100 rows , and the position of the field and field names could be change every time depending on the Subscriber usage , is there any way to upload the file but after checking the field name in the file and matching to corresponding column name in the table .
View 5 Replies
View Related
Apr 22, 2013
I am struggling with a simple data load using sqlldr
Ref: I am running Oracle 11.2 on Linux 5.7.
===========================
Here is my table:
SQL> desc ntwkrep.CARD
Name Null? Type
[code]...
Looking at the actual data and counting the characters for the "REALIZES" column data, I see that it is roughly slightly over 1000 characters.
So, attempting various ideas to fix the problem, I tried changing nls_length_semantics to "char" and recreating the table, but this still didn't work and still got the same data load errors on the same rows.
Then, I changed nls_length_semantics back to byte and recreated the table again.This time, I altered the table manually as:
SQL> ALTER TABLE ntwkrep.CARD MODIFY (REALIZES VARCHAR2(4000 char));
Table altered.
SQL> desc ntwkrep.card
Name Null? Type
----------------------------------------------------------------- -------- --------------------------------------------
CIM_DESCRIPTION VARCHAR2(255)
CIM_NAME NOT NULL VARCHAR2(255)
COMPOSEDOF VARCHAR2(4000)
[code]...
Here is a copy of the first row of data which fails to load every time no matter how I change the "REALIZES" column in the table.
other(1)`CARD-mes-fhnb-bldg-137/1` `other(1)`CARD-mes-fhnb-bldg-137/1 [other(1)]`HwVersion:C0|SwVersion:12.2(40)SE|Serial#:FOC1302U2S6|` Chassis::CHASSIS-mes-fhnb-bldg-137, Switch::mes-fhnb-bldg-137 ` Port::PORT-mes-fhnb-bldg-137/1.23, Port::PORT-mes-fhnb-bldg-137/1.21, Port::PORT-mes-fhnb-bldg-137/1.5, Port::PORT-mes-fhnb-bldg-137/1.7, Port::PORT-mes-fhnb-bldg-137/1.14, Port::PORT-mes-fhnb-bldg-
[code]...
View 5 Replies
View Related