Importing already-made SQL*Loader control files in OWB 10g

Hi all,
Suppose that I have a certain amount of already hand-made SQL*Loader control files, say 50 or so.
Each of these control files have a variable quantity of fields.
I feel really lazy, so I would like to know if it is possible to import directly these control files instead of re-typing them in the design center. That would save me a lot of time.
Thanks !
Burgy

Hi Burgy
One option is to use the sqlloader option to generate an external table from the SQLLoader control file (search for generate_only in the sqlloader documentation). If you define the external table in the database you can reverse engineer this into OWB.
Cheers
David

Similar Messages

  • Parameters / Variables in SQL Loader Control File

    Here's my problem, I have created SQL Loader control file (ctl) to load a file of employees. This loader program is registered in Oracle Applications. What I want is to pass a parameter derived from the profile like the user name of the one who executed the loader program and pass it to the loader program so that the user name info is included in the loading
    example
    input data
    123456,John,Smith
    654321,Jane,Doe
    loaded data
    123456,John,Smith,03-JUL-2009,USER13
    654321,Jane,Doe,03-JUL-2009,USER13
    the sysdate is easy because it can be defined in the column but what I really want to achieve is a parameter passed to the ctl file.
    Thanks in advance.

    Dear user!
    Please have a look at this thread.
    {thread:id=915277}
    In the last three posts I explain how to use a shellscript with AWK and SED to pass parameters to a controlfile.
    Please feel free to post again if you have some questions regarding my explanatory notes.
    Yours sincerely
    Florian W.

  • Define variable in SQL Loader Control File

    Hi,
    I have an input file where the first line is the header record, followed by the detail records. For the processing, I do not need to store the fields of the header record but I need a date field from this header record and store in as part of the detail record in an oracle record row.
    Is it possible to define a variable within the sql loader control file to store the value that I need in memory then use it when I do the sql insert by the sql loader?
    Thanks for any advice.

    Not sure that you can. But if your on unix/linux/mac its easy enough to write a shell script to populates the variables in a template file that you can then use as the ctl file. The perl template toolkit could be an option for that as well

  • Add "Trailing Nullcolls" to sql loader control files generated by OWB

    Hi gurus,
    I've got a problem loading data with SQL Loader. I need to add the parameter "trailing nullcols" into the SQL Loader control file generated by OWB. I don't want to do this by saving the skript on my hard disk and run it manually, so any ideas where I can put this parameter? I am using OWB 10.1 on a windows 2000 machine.
    Thanks
    Stephan

    Hi,
    I found the solution to problem.
    1; Select the mapping where you map your source flat file to a table.
    2; Right click on the mapping and select "configure"
    3; Go Sources and Targets -> YOUR_TABLE_NAME -> SQL*Loader Parameters
    4; Set Trailing Nullcols = true :-)
    Thank you to anyone looking at this problem.
    Greetings
    Stephan

  • SQL-Loader Control file for Tab-delimited fields

    i want to import a text-file with TAB-DELIMITED fields and a line-break + return at the end of each record.
    a want to do this by sql-loader and a control file.
    please, can someone give me the statement:
    e.g.
    load data
    infile 'exaple.txt' .......
    (...field1, field2,....)
    thank you very much

    Case Study 3: Loading a Delimited, Free-Format File
    http://otn.oracle.com/pls/db92/db92.to_URL?urlname=http:%2F%2Fdownload-west.oracle.com%2Fdocs%2Fcd%2FB10501_01%2Fserver.920%2Fa96652%2Fch10.htm%231006907
    Modify the example and use 'terminated by whitespace' instead
    For more information on TERMINATED Fields see
    http://otn.oracle.com/pls/db92/db92.to_URL?remark=drilldown&urlname=http:%2F%2Fdownload-west.oracle.com%2Fdocs%2Fcd%2FB10501_01%2Fserver.920%2Fa96652%2Fch06.htm%231013838

  • Behavior of append in sql loader control file

    I've been searching for the exact behavior of the append option on the control file for sql loader and believe the following is the case
    using append means that new records will be written to the table
    what happens with records in the file that already exist in the table. Are they written to the discard or bad files or just ignored. I assume they are ignored but wasn't able to find anywhere it said that explicitly
    thanks in advance

    Actaully the table being loaded into has no keys defined. So the complete record would exist. For example the table has 3 coulumns named c1,c2, c3 and a record with the following
    abc
    def
    ghi
    If I load the table using the append method and the file contains the same record would I then have two records? Actually I can test this myself. When asking the question originally I didn't have anything setup to test it.
    Thanks for the response

  • How to use Conditional statements in SQL Loader control file

    Hi,
    I am using sql loader to load a flat file to the table. I am using control file for this purpose as show below:
    LOAD
    INTO TABLE store_shrink
    TRUNCATE
    FIELDS TERMINATED BY "     "
    TRAILING NULLCOLS
    SITE_ID char,
    ST_SHRINK char,
    ST_REVENUE char,
    SHRINK_PR char ":ST_SHRINK/:ST_REVENUE"
    My question is this. If in the flat file the value of 'ST_REVENUE' is '0', then I want 'SHRINK_PR' to be '0' as well, and skip the calculation (:st_shrink/:st_revenue).
    How to achieve this with the conditional statement or using any Oracle function?
    Any help or suggestion is greatly appreciated.
    Thanks in advance.

    Hi there,
    I tried the following in my above query and it doesn't work somehow. Anyone has an idea? I have been on internet throughout but to no avail. Please help:
    LOAD
    INTO TABLE store_shrink
    TRUNCATE
    FIELDS TERMINATED BY "     "
    TRAILING NULLCOLS
    SITE_ID char,
    ST_SHRINK char,
    ST_REVENUE char,
    SHRINK_PR char "case (when :st_revenue<>'0.00' then :SHRINK_PR=:ST_SHRINK/:ST_REVENUE else :SHRINK_PR='0.00') end"
    )

  • Using constant values in SQL Loader control file

    Hi,
    I have a requirement where I need to migrate the data of 6 tables from MS Access into Oracle data base. I have written SQL Loader scripts so that I can create CSV files based on MS Access data and then migrate into Oracle. But in Oracle tables we have 4 common columns like Create_By, Created_Date,Updated_By and Update_Date, and those fields should be taken care by system. So, basically system should update login user ID and sysdate values in respective columns. My question here is, I do not have above mentioned common columns in MS Access tables. So, can I hard code those values in control file by saying
    Created_By CONSTANT user,
    Create_Date CONSTANT TO_CHAR(SYSDATE,'MM/DD/YYYY HH24:MI:SS'),
    Updated_By CONSTANT user,
    Updated_Date CONSTANT TO_CHAR(SYSDATE,'MM/DD/YYYY HH24:MI:SS')
    Please let me know your valuable suggestions.

    You do it without it constant
    --sample data file
    1,2,,
    3,4,,
    LOAD DATA
    INFILE 'D:\d.csv'
    INTO TABLE ABC
    FIELDS TERMINATED BY ","
    ( A,
      B,
      C sysdate,
      D "USER"
    )Edited by: J99 on Jul 23, 2009 12:14 PM
    OR use to avoid extra ',' in datafile.
    --sample data file
    1,2
    3,4
    LOAD DATA
    INFILE 'D:\d.csv'
    INTO TABLE ABC
    FIELDS TERMINATED BY "," TRAILING NULLCOLS
    ( A,
      B,
      C sysdate,
      D "USER"
    )

  • SQL Loader control file script - INFILE

    Hi,
    The data stored in the file "c:/test_<yyyy>_<mm>_<dd>". The <yyyy>, <mm> and <dd> has to be from sysdate. The infile gets generated on daily basis.
    LOAD DATA
    INFILE 'c:/test_'||to_char(sysdate,'yyyy')||'_'||to_char(sysdate,'mm')||'_'||to_char(sysdate,'dd').txt'
    BADFILE 'c:/test_' || to_char(sysdate,'yyyy') || '_' || to_char(sysdate,'mm') || '_' || to_char(sysdate,'dd').bad'
    I ran the above ctl from cmd prompt, it is giving an error. It is not recognizing the || symbol as concatenation.
    How can I achieve this?
    Thanks in advance.

    Thanks Hussein.
    I placed the control script in GL_TOP directory in unix OS. I created an executable (for the control script) and scheduled this concurrent program.
    OS :- HP Tru64 UNIX - 5.1b
    Database : 9.2.0.5
    Application: Oracle General Ledger (Ver 11.5.9).
    The error I am getting if I run the command "sqlldr ...." from cmd prompt is:
    sql*Loader: Release 8.1.7.0.0
    Illegal combination of non-alphanumeric characters
    INFILE 'c:/test_' || to_char(sysdate,'yyyy'.......'
    Thanks again.

  • SQL  LOADER CONTROL FILE

    hi,
    Can one call procedures and functions inside a control file in SQL Loader ...alternatively how can one use case inside a control file ...
    How to implement the the following code in a control file:
    SELECT CASE
    WHEN INSTR(UPPER(returnname),'SCHEDULE') > 0 THEN 'S'
    WHEN INSTR(UPPER(returnname),'RETURN') > 0 THEN 'R'
    WHEN INSTR(UPPER(RETURNNAME),'BREAKDOWN') > 0 THEN 'B'
    ELSE returnname
    END
    AS returns
    FROM tableexample
    Please let me know ..

    regarding your first question :
    data_file TT.dat :
    SCHEDULE
    RETURN
    BREAKDOWN
    HOLIDAY
    WEEKEND
    schedule
    return
    breakdown
    holiday
    weekend
    control_file TT.ctl :
    load data
    insert
    into table dummy_test
    (TEXT position(01:20) char
    ,TEXT_b position(01:20) char " decode(upper(:TEXT),'SCHEDULE','S','RETURN','R','BREAKDOWN','B',:TEXT) "
    parameter_file TT.par :
    userid=user/password
    DATA=TT.dat
    CONTROL=TT.ctl
    ERRORS=99999
    load file into table :
    sqlldr parfile=TT.par
    log-file TT.log :
    SQL*Loader: Release 8.1.6.2.0 - Production on Thu Feb 26 16:01:23 2004
    (c) Copyright 1999 Oracle Corporation. All rights reserved.
    Control File: TT.ctl
    Data File: TT.dat
    Bad File: TT.bad
    Discard File: none specified
    (Allow all discards)
    Number to load: ALL
    Number to skip: 0
    Errors allowed: 99999
    Bind array: 64 rows, maximum of 65536 bytes
    Continuation: none specified
    Path used: Conventional
    Table DUMMY_TEST, loaded from every logical record.
    Insert option in effect for this table: INSERT
    Column Name Position Len Term Encl Datatype
    TEXT 1:20 20 CHARACTER
    TEXT_B 1:20 20 CHARACTER
    SQL string for column : " decode(upper(:TEXT),'SCHEDULE','S','RETURN','R','BREAKDOWN','B',:TEXT) "
    Table DUMMY_TEST:
    10 Rows 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: 2816 bytes(64 rows)
    Space allocated for memory besides bind array: 0 bytes
    Total logical records skipped: 0
    Total logical records read: 10
    Total logical records rejected: 0
    Total logical records discarded: 0
    Run began on Thu Feb 26 16:01:23 2004
    Run ended on Thu Feb 26 16:01:23 2004
    Elapsed time was: 00:00:00.58
    CPU time was: 00:00:00.10
    SQL > select * from dummy_test ;
    TEXT TEXT_B
    SCHEDULE S
    RETURN R
    BREAKDOWN B
    HOLIDAY HOLIDAY
    WEEKEND WEEKEND
    schedule S
    return R
    breakdown B
    holiday holiday
    weekend weekend
    10 rows selected.
    SQL>
    Does it solve your problem ?
    Regards,
    Rainer

  • Function for column validation in SQl Loader control file.

    Hello Gurus,
    We have an requirement to create a function to validate all date and number columns in control file, and return 0/1 accordingly to valid_column which is last column . I have developed the function which accepts the number and date type columns as parameter and return Y/N. My question is, is there any way so that the function could be created without passing any parameter to it?
    If yes, then how to call the function in control file?
    I have been searching since a while on Google to find out any solution but could find out.
    Using Oracle 11g Enterprise Edition Release 11.2.0.1.0
    Thanks!
    Edited by: Sush on Jul 5, 2012 2:23 AM
    Edited by: Sush on Jul 5, 2012 4:16 AM
    Edited by: Sush on Jul 5, 2012 7:28 AM

    Hi Srini,
    I have gone through this document and i couldn’t find out any solution. That’s why i was seeking help from you Gurus.
    Thanks for your help, i think i have learnt few new things abt SQL Loader by studying this document :)
    Thanks!

  • SQL Loader Control File configuration

    Hi,
    I'm writing loader scripts for a Consulting team to use to load standard format files for customers. I want to be able to support different field separators without having to create copies of the control files for each separator variant.
    e.g.
    LOAD DATA
    INFILE "%IMPPATH%\BaseProd.txt"
    BADFILE "%IMPPATH%\BaseProd.bad"
    DISCARDFILE "%IMPPATH%\\BaseProd.dsc"
    INSERT INTO TABLE
              IMPORT_PRODUCT
         FIELDS TERMINATED BY ','
         OPTIONALLY ENCLOSED BY '"'
         TRAILING NULLCOLS
    (      PROD_CD      "UPPER(:PROD_CD)",
         PROD_DESCRP,
         SELL_PRICE)
    I'd like to be able to specify a %variable% for the FILEDS TERMINATED BY value. (The %IMPPATH% works a treat for the location of the file.)
    Anyone know how to achieve this?
    Thanks in advance.

    I have tried
    SET MYSEPARATOR=,
    and
    FIELDS TERMINATED BY '%MYSEPARATOR%'
    I then get the message in the LOG file
    Column Name Position Len Term Encl Datatype
    PROD_CD FIRST * O(") CHARACTER
    Terminator string : '%MYSEPARATOR%'
    It appears to be looking for the complete string %MYSEPARATOR% as the separator!
    I have also tried
    SET MYSEPARATOR=','
    and
    FIELDS TERMINATED BY %MYSEPARATOR%
    which gives the error
    SQL*Loader-350: Syntax error at line 9.
    Illegal combination of non-alphanumeric characters
    FIELDS TERMINATED BY %MYSEPARATOR%
    ^

  • Sql loader control file question.

    I have a text file (t.txt) which contains a record types AAA and AAB to input fixed width data into a table (t) AAA_NO, AAA_TYPE, AAB_DESC.
    Control file (control_t) contents:
    load data infile '/path/t.txt'
    insert into table t
    when ((1:3) = 'AAA' )
    AAA_NO position (4:14) CHAR,
    AAA_TYPE postion (15:27) CHAR
    Works prefectly, but I need to add another set of data from the same t.txt file with record type AAB. I attempted to add this into the same control file:
    into table t
    when (1:3) = 'AAB'
    AAB_DESC position (28:128) CHAR
    It fails naturally. How would I include the addtional record type data into the same table after AAA_NO and AAA_TYPE have already been inserted? Do I need to include the AAA_NO in the second insert (AAB_DESC)? Should I create another temp table to store only the AAA_NO and AAB_DESC and then insert that data into table t after the loader is done? Or can this be completed in the same control file?

    Thanks again for the assistance, this is a tough one to fix. I am new to sqlloader.
    The temp table creation is causing some serious errors, so I am back to trying to fix sqlloader to get the job done. the apt.txt file contains records that each row of a new record starts with either 'APT' or 'ATT'. Here is the details of what I am trying to do.
    crtl file:
    load data
    infile '/path/apt.txt
    insert
    into table t_hld
    when ((1:3) = 'APT')
    apt_no position (4:14) CHAR,
    apt_type position (15:27) CHAR,
    apt_id position (28:31) CHAR
    The next section is the problem where I am inserting apt_sked into the same table t_hld as above because it has a different record qualifier its ATT and not APT.
    insert
    into table t_hld
    when (1:3) = 'ATT'
    apt_no position (4:14) CHAR,
    apt_sked position (16:126) CHAR
    The positions of the data using fixed is working, I can insert the apt_sked data into another temp table instead of t_hld and it works. It's just when I attempt to place the ATT apt_sked data into the t_hld table after the APT data has been loaded into the t_hld table....I tried APPEND instead of INSERT, but that does not work.
    The APT_NO's of the data are all the same- it is the qualifier for the records (Primary Key attribute- however I do not have it established since it is a temp table concept).
    I am stuck trying to get the data in the t_hld table, everything works when I do not try to put the ATT apt_sked data into t_hld- everything is valid. And placing the ATT apt_sked data into a different temp table works perfectly- but I can't find a way to create an update to t_hld from this temp table without errors. So I am trying to go back to sqlloader to get this done- any thoughts or questions?
    Thanks a billion!
    Shawn

  • SQL Loader Control file WHEN clause

    LOAD DATA
    REPLACE
    INTO TABLE IDL_Investments
    WHEN average_balance < '100.00'
    FIELDS TERMINATED BY X'9'
    TRAILING NULLCOLS
    Borrower_Id,
    Account_No,
    customer_No,
    cptype_id "GETID(:cptype_id)",
    customer_name,
    average_balance,
    CP_GroupName,
    CP_type,
    Account_Type,
    Instrument_type,
    DD_date "TO_DATE(:DD_date, 'dd/mm/yy')",
    fac_Maturity_date "TO_DATE(:fac_Maturity_date, 'dd/mm/yy')"
    above one is the control file. when i tried to load data i waas getting the following error.
    SQL*Loader-350: Syntax error at line 4.
    Illegal combination of non-alphanumeric characters
    WHEN average_balance < '100.00'
    ^
    instead of '<' symbol if i place an '=' symbol then its workig fine.
    So how do I use <, <=, > or >= operators in a WHEN clause of a control file can any one help me?
    Thanks in advance.

    Thanks for the suggestion but by searching in someother sites i found that
    only equality operators ('=', '!=' or '<>') are permited in the WHEN clause expressions of a control file in SQL Loader.
    So now i changed my logic.
    thanks anyway.

  • SQL Loader Control file help!!!

    Hi All,
    I was in the process of writing a control file for sql loader for an activity i am performing and would appreciate inputs from you all.
    I have a table patient containing 44 columns, i have a column 'SEC_LANG_NAME' in which i have to insert data from a excel file.
    The excel file contains 3 columns, PATIENT_ID, NAME,SEC_LANG_NAME, i just want to load the values present in 'SEC_LANG_NAME' column in excel file into the 'SEC_LANG_NAME' coulmn in the patient table using sqlloader and the condition is that PATIENT_ID in excel file should be equal to PATIENT_ID in the patient table.
    as a first step i am converting this excel into a csv file, and then will shoot the sqlldr once i am done with control file, can someone please help me with the format of control file for this activity.
    thanks in advance,
    regards,
    Edited by: user10243788 on Jan 3, 2010 12:09 AM

    Hello user10243788.
    It appears that your intent is to load data into an existing table that contains the key data and is only lacking a column of information. SQL*Loader itself is not built to do this; what it can do is load records to tables. You will have to use a two-step approach similar to what Srini has suggested. 1) If your process is able to be run local to the database server, an external table is a great option. If your process is instead run remote to the database server, SQL*Loader will allow you to load your data file to a table. 2) You will need to run a process to update the PATIENT table.
    Here is a start of a control file based on the details that you've providedLOAD DATA
    REPLACE
    INTO patient_enhance
    FIELDS TERMINATED BY ","
    ( patient_id
    , name  FILLER
    , sec_lang_name)Hope this helps,
    Luke
    Please mark the answer as helpful or answered if it is so. If not, provide additional details.
    Always try to provide create table and insert table statements to help the forum members help you better.
    Edited by: Luke Mackey on Jan 5, 2010 12:30 PM
    oops, will have to load patient_id to do the update

Maybe you are looking for

  • TS1702 ive lost my apps where can i find them

    i plugged my ipod into the computer earlier tonight and it told me i had to restore it - so i did. but in the process it has lost all the apps i had previously bought and now i cant find them or find a way to re-download them without having to pay ag

  • 'Other' takes up everything and the the other types of data is 0 KB

    I have a 13" MacBook Pro with Retina Display running Mountain Lion and I was clearing up some of my unneeded files and when I looked at the "Storage" tab in the 'About this Mac' option, my Macintosh HD read: Audio: 0KB, Movies: 0KB, Photos: 0KB, Apps

  • Active Directory multi forest Kerberos authentication Tomcat

    Sorry. It is wrong forum. I forwarded my question to Business Objects forum. Hi, I have Business Objects Enterprise XI R2 with Tomcat installed on Windows 2003. My BO server and users are placed in different Active Directory forests (BO domain x fore

  • Pre built VMs for OBIEE11g?

    Hello All, Do we have any pre-built VMs available for OBI11g? I searched in edelivery but could not find. please let me know if we have any? Thanks in advance Regards, Kiran

  • Inicio cuenta premiun

    holasoy nuevo usuario del servicio premiun pero no se  por que no puedo obtener mi servicio desde mi movil sin coneccion a internet, que puede estar pasando. atento