Using trim and date function in control file

I want to load "?30/12/2005 22:13?" into the table table1 and remove the "?" characters.
LOAD DATA
INTO TABLE TABLE1
FIELDS TERMINATED BY ","
(ORDER_DATE "TRIM('?', 'MM/DD/YYYY HH24:MI')"
What's wrong with the above statement ?
thanks.

in addition, can i specify the starting row from the text file to load the data ?
e.g. i only want to load from the 10th row Use SKIP 9 for that
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96652/ch04.htm#1004940
and to eliminate the last 2 rows of the text file.There is no command for that, but if these rows can be identified through some pattern you could use conditional loading and exclude these rows
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96652/ch05.htm#1005658

Similar Messages

  • Using translate for date in the control file !!

    Hi,
    I am having data file where in i expect date but get non-numeric character.
    I am generating control file dynamically (programatically).
    While creating control file i know that here the type of data will be date so i put datatype as date. But at one place i got non numeric character instead of date.
    Now i want to put somekind of logic built in my dynamic generation which will check whether if value within that column is character then make it null and then load data. And if it is numeric keep it as it it.
    i.e.
    if(non-numericChars)
    make value null before loading.
    else
    keep the value as it and then load it.
    I heard that with translate function we can do that. Right ?
    So if i have a line like this in my control file:
    column_Name date "MM/DD/YYYY HH:MI:SS AM"
    How should i write the above statement to put the above mentioned logic.
    Any help would be highly appreciated.
    Regards,
    Dipesh

    and Perhaps TO_DATE can help you :
    TO_DATE
    Syntax
    to_date::=
    Text description of to_date
    Purpose
    TO_DATE converts char of CHAR, VARCHAR2, NCHAR, or NVARCHAR2 datatype to a value of DATE datatype. The fmt is a date format specifying the format of char. If you omit fmt, then char must be in the default date format. If fmt is 'J', for Julian, then char must be an integer.
    Note:
    This function does not convert data to any of the other datetime datatypes. For information on other datetime conversions, please refer to TO_TIMESTAMP, TO_TIMESTAMP_TZ, TO_DSINTERVAL, and "TO_YMINTERVAL".
    The default date format is determined implicitly by the NLS_TERRITORY initialization parameter, or can be set explicitly by the NLS_DATE_FORMAT parameter.
    The 'nlsparam' has the same purpose in this function as in the TO_CHAR function for date conversion.
    Do not use the TO_DATE function with a DATE value for the char argument. The first two digits of the returned DATE value can differ from the original char, depending on fmt or the default date format.
    Note:
    This function does not support CLOB data directly. However, CLOBs can be passed in as arguments through implicit data conversion. Please refer to "Datatype Comparison Rules" for more information.
    See Also:
    "Date Format Models"
    Examples
    The following example converts a character string into a date:
    SELECT TO_DATE(
    'January 15, 1989, 11:00 A.M.',
    'Month dd, YYYY, HH:MI A.M.',
    'NLS_DATE_LANGUAGE = American')
    FROM DUAL;
    TO_DATE('
    15-JAN-89
    The value returned reflects the default date format if the NLS_TERRITORY parameter is set to 'AMERICA'. Different NLS_TERRITORY values result in different default date formats:
    ALTER SESSION SET NLS_TERRITORY = 'KOREAN';
    SELECT TO_DATE(
    'January 15, 1989, 11:00 A.M.',
    'Month dd, YYYY, HH:MI A.M.',
    'NLS_DATE_LANGUAGE = American')
    FROM DUAL;
    TO_DATE(
    89/01/15
    http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96540/functions137a.htm#SQLRF06132
    Joel P�rez

  • SQL Loader : Trim and Decode functions help please

    Hi,
    I have to load data from a flat file, for some columns i need to use TRIM and DECODE functions.It is a pipe delimited file.
    I get syntax errors (one is below) same error listed for TRIM.
    SQL*Loader-350: Syntax error at line xx.
    Expecting "," or ")", found "DECODE".
    ===========
    ,FINAL_BILL_DATE CHAR(30) "TRIM(:FINAL_BILL_DATE)"
    ,BUSINESS_ID "DECODE(:BUSINESS_ID,'B',1,'C',2,'E',3,'G',4,'O',5,'R',6,'T',7,'U',8,'H',9,-1)"
    Can anyone please help.
    Thanks
    Cherrish

    Hello Cherrish.
    The error you are receiving leads me to believe that at some point prior to the DECODE on the line for BUSINESS_ID, probably some line even before the FINAL_BILL_DATE line, there a syntactical error causing the quotes before the DECODE to actually terminate some other syntax. Without all of the lines that could actually contribute to this, including the header details, this is the best I can advise.
    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.

  • Use DO and AI function in one DAQ Device

    Hi, everyone
    I try to use DO and AI function in DAQ USB-6008.
    When I run my program it shows one error message as below,
    Please suggest me how to solve this problem?
    Thank you!
    My Code:
    DAQmxCreateTask("", &gTaskHandle_DAQ1);
    DAQmxCreateTask("", &gTaskHandle_DAQ1_DO);
    DAQmxCreateAIVoltageChan(gTaskHandle_DAQ1, cChan_DAQ1, "", DAQmx_Val_Cfg_Default, min,max, DAQmx_Val_Volts, NULL);
    DAQmxCfgSampClkTiming(gTaskHandle_DAQ1, "", rate, DAQmx_Val_Rising, DAQmx_Val_ContSamps, sampsPerChan);
    DAQmxGetTaskAttribute(gTaskHandle_DAQ1, DAQmx_Task_NumChans, &gNumChannels);
    DAQmxCreateDOChan(gTaskHandle_DAQ1_DO, cChan_DAQ1_DO, "", DAQmx_Val_ChanForAllLines);  <--- Occur error

    hi, Billingsley
    My DAQ version is 7.4.4f4
          OS version is  XP Profession SP3
          LabWindows/CVI version is 8.5.0
    Thank you!

  • Expert secrets for using RMAN and Data Pump by kamran agayev and Aman Sharm

    Hi ,
    Is this book available in INDIA:
    Expert secrets for using RMAN and Data Pump by kamran agayev and Aman Sharma
    How can i get this book in India.
    Thanks,
    Alok
    Edited by: user12141893 on 6 Apr, 2012 11:25 AM
    I tried to buy this book online from rampant's official site but shipping cost was more than cost of book.
    Book is not available on Flipkart and Amazon also

    Helios,
    OP can send a mail to me too :-) .
    OP,
    We are in talks with the publisher. In India, the book would be by another partner publisher and details of it I shall be updating when would be available. Thanks for the interest in our book.
    Aman....
    PS: This is a technical forum and is not meant for such topics. Please discuss by communicating with Kamran and me over email personally. Let's keep the forum for the very purpose it is meant for-technical discussions.

  • I am using CS3 and want to save a file as a pdf where someone can then edit the text. How can I do this please? Thank you :)

    I am using CS3 and want to save a file as a pdf where someone can then edit the text. How can I do this please? Thank you

    You might be able to use the newest adobe reader program/application for that.
    You would have to save your pdf out of photoshop cs3 without any text and then add the text to the pdf in adobe reader.
    The text added in adobe reader can't be edited in photoshop, so the other people would have to adobe reader or acrobat to edit the text.
    https://helpx.adobe.com/reader.html

  • Reading XML file using BAPI and then uploading that xml file data into SAP

    I am getting a xml file from Java server. I need to take
    data from this file using BAPI and need to upload into SAP using SAP.
    Please tell me how to read XML files using BAPI's.

    <b>SDIXML_DATA_TO_DOM</b> Convert SAP data (elementary/structured/table types) into DOM (XML
    <b>SDIXML_DOM_TO_XML</b>  Convert DOM (XML) into string of bytes that can be downloaded to PC or application server
    <b>SDIXML_DOM_TO_SCREEN</b> Display DOM (XML)
    <b>SDIXML_DOM_TO_DATA</b>
    data: it_table like t001 occurs 0.
    data: l_dom      TYPE REF TO IF_IXML_ELEMENT,
          m_document TYPE REF TO IF_IXML_DOCUMENT,
          g_ixml     TYPE REF TO IF_IXML,
          w_string   TYPE XSTRING,
          w_size     TYPE I,
          w_result   TYPE I,
          w_line     TYPE STRING,
          it_xml     TYPE DCXMLLINES,
          s_xml      like line of it_xml,
          w_rc       like sy-subrc.
    start-of-selection.
      select * from t001 into table it_table.
    end-of-selection.
    initialize iXML-Framework          ****
      write: / 'initialiazing iXML:'.
      class cl_ixml definition load.
      g_ixml = cl_ixml=>create( ).
      check not g_ixml is initial.
      write: 'ok'.
    create DOM from SAP data           ****
      write: / 'creating iXML doc:'.
      m_document = g_ixml->create_document( ).
      check not m_document is initial.
      write: 'ok'.
      write: / 'converting DATA TO DOM 1:'.
      CALL FUNCTION 'SDIXML_DATA_TO_DOM'
        EXPORTING
          NAME               = 'IT_TABLE'
          DATAOBJECT         = it_table[]
        IMPORTING
          DATA_AS_DOM        = l_dom
        CHANGING
          DOCUMENT           = m_document
        EXCEPTIONS
          ILLEGAL_NAME       = 1
          OTHERS             = 2.
      if sy-subrc = 0.  write  'ok'.
      else.             write: 'Err =', sy-subrc.
      endif.
      check not l_dom is initial.
      write: / 'appending DOM to iXML doc:'.
      w_rc = m_document->append_child( new_child = l_dom ).
      if w_rc is initial.  write  'ok'.
      else.                write: 'Err =', w_rc.
      endif.
    visualize iXML (DOM)               ****
      write: / 'displaying DOM:'.
      CALL FUNCTION 'SDIXML_DOM_TO_SCREEN'
        EXPORTING
          DOCUMENT          = m_document
        EXCEPTIONS
          NO_DOCUMENT       = 1
          OTHERS            = 2.
      if sy-subrc = 0.  write  'ok'.
      else.             write: 'Err =', sy-subrc.
      endif.
    convert DOM to XML doc (table)     ****
      write: / 'converting DOM TO XML:'.
      CALL FUNCTION 'SDIXML_DOM_TO_XML'
        EXPORTING
          DOCUMENT            = m_document
        PRETTY_PRINT        = ' '
        IMPORTING
          XML_AS_STRING       = w_string
          SIZE                = w_size
        TABLES
          XML_AS_TABLE        = it_xml
        EXCEPTIONS
          NO_DOCUMENT         = 1
          OTHERS              = 2.
      if sy-subrc = 0.   write  'ok'.
      else.              write: 'Err =', sy-subrc.
      endif.
      write: / 'XML as string of size:', w_size, / w_string.
      describe table it_xml lines w_result.
      write: / 'XML as table of', w_result, 'lines:'..
      loop at it_xml into s_xml.
        write s_xml.
      endloop.
      write: / 'end of processing'.
    end of code
    Hope this will be useful.
    regards
    vinod

  • Restrictions for using sql commands and operators in loader control file

    Hi ,
    It suppose that there is a lot of restrictions and limitations when using sql commands and operators in the loader control files, same as it seems I cannot use (or) when with case statement, also it seems there is certain length for the case,
    So guys, what are the common limitations and restrictions to be avoided in the loader control file ?
    Your efforts are highly appreciated
    Ash

    Hi Ash,
    if you need to do more complicated logic its better to define the file to be loaded as an external table. You can then use any sql function you like against the external table rather than messing around with what you can and can;t do in a sqlldr control file.
    You can use the external_table option of sqldr to generate the definition.
    Regards,
    Harry
    http://dbaharrison.blogspot.com/

  • Decode variant data w/o using 'Variant To Data' function.

    I need to decode variant data w/o having foreknowledge of the type used to create it. That is, I'm using the 'Flattened String To Variant' function which gives me the info I need, but it's all contained within one indicator. I need some way to break this info down into its constituent elements.
    For instance, let's say I have the flattened data and type descriptor from a cluster with two elements, a boolean and a string, but not the structure itself. Passing this flattened data and/or the type descriptor into a function, I would get a 2D array (or the like) as output containing the name of the boolean (its label), its value, and the name of the string and its corresponding value.
    There must be a way to
    do this, and I suspect it's been done already, but I can't find any reference to it.
    I have attached a file named Test.vi which demostrates this problem.
    Remember, even though I know the name of the control, I won't know the type, so I cannot use the 'Variant To Data' function to deference these values. I can make ready use of DLLs, CINs, or LabVIEW code for the solution.
    Thanks ahead of time for any help! Greg
    Attachments:
    Test.vi ‏26 KB

    You might be able to take advantage of the Variant to Flattened String VI from the Advanced>>Data Manipulation>>Variants pallette. This VI converts a Variant to a flattened data string and a type descriptor. The type descriptor is explained in ap note 154. You might be able to create a VI that would parse data from the flattened data string using the type descriptor. You might have to represent each piece of data as a flattened string to work around the data flow issues in LabVIEW.

  • Using CASE insted of DECODE in Control File

    Hi,
    I have seen a lot of examples of DECODE in a Control File. I know how to use DECODE, but I prefer CASE. Does anyone know, if it is allowed, and is the synatx the same as standard CASE statements. I am going to try it, but this is just so that I don't try all different variations and then find that it is not available.
    Another thought is could you use an IN List Statement.
    Something like IF :col1 IN('A', 'AB') THEN "wow".
    I know the IN is going to be jsut a WISH...
    --Thanks
    Message was edited by:
    pshah2k

    Yep, here's an example:
    LOAD DATA
    INFILE '/home/ennisbi/DBLOAD/data/xxx_2000.csv'
    APPEND INTO TABLE STG_VOLUME
    FIELDS TERMINATED BY ','
    TRAILING NULLCOLS
    EFFECTIVE_DATE DATE "YYYYMM",
    SSB_ID,
    SEDOL_OR_CUSIP,
    AVG_BID_ASK_SPREAD_DIV2,
    AVG_SHARE_VOLUME,
    ANNUALIZED_VOLATILITY "CASE WHEN :ANNUALIZED_VOLATILITY='NC' then 0 else TO_NUMBER(:ANNUALIZED_VOLATILITY) end"

  • Functioning of control file when re-created

    Hi friends,
    we can recover database without data loss when there is a situation to re-create control file(for suppose control file is lost and no multiplexed copies are available) using NORESETLOGS option in controlfile script.
    when we re-create controlfile, no SCN and checkpoint information will be there in controlfile. Then how controlfile will get the latest SCN and how it allows DB to be up and running.
    please explain. thanks in advance

    Hi,
    As per my knowledge I am explaning what will happen at Background.
    As you said that control File is lost and no mutiplexed, In that scenario you are going to recreate the Controlfile. As we know that control file will be in Sync with All DataFiles (System etc.,) , which will hold the SCN numbers, When the Instance is UP with the newly Created ControlFile (Since scn is not available), it will get the Highest SCN Number from Current DataFiles and Check for in Sync with other Datafiles, whether SCN is in Sync with the Other data files or not.
    And further proceed with Recovery Process Based on the Redo Logs.
    As you said if the required SCN is not available in the Redo Logs it will Check for the Archive Redo Logs Based on the SCN i.e., (If Req SCN is < SCN in Redo Logs) It will Check for Archive Logs files.
    Let me know in case If I am not clear or some where wrong in concept so that I can learn some thing inturn from others.!!
    Thanks & Regards,
    Pavan Kumar N

  • 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"
    )

  • Fail to load data from a control file!!!

    Hi members,
    I have Oracle 10g 2 installed on my PC runing Windows XP Pro OS,
    When I lauch EM to load data in a table from a control file (ex: load.ctl) I this smessage is promted:
    "Error - RemoteOperationException: ERROR: Wrong password for user"
    Note:
    - I try to load a local table in a local database from a local file
    - I use the local administrator user name/ password (administrator/xxxxxxxxx)
    - The listner process works well
    - I can access localy to my data base
    So can you help me!!

    Are you connected with that OS administrator and specified the correct password?. Have you specified the correct password for the database owner of the table you are loading?
    If you are not entering them manually, are using the currect OS and Database username and password in the Preferred Credentials settings for HOST and Database?

  • How can i validate the data in the control file?

    Consider that the SQLLoader reads the Input data File from the path and it loads the data into the tables based up on the descrition specified in the control File.
    First, the table to be filled is created:
    create table sql_loader_1 ( load_time date, field_1 Numeric, field_2 varchar2(10)
    Sample Control File :
    load_1.ctl
    load data
    infile 'load_1.dat' "str '\r\n'"
    insert into table sql_loader_1
    load_time sysdate,
    field_2 position( 1:10),
    field_1 position(11:20)
    Note that the positions 11 through 20 are loaded into field_1 and positions 1 through 10 into field_2. The field load_time is filled with the current time (sysdate) of the load.
    Here's the data. The name of the file (load_1.dat) had been specified with the infile statement in the control file.
    load_1.dat
    0123456789abcdefghij
    foo bar
    here comes a very long line
    and the next is
    short
    Here i want to validate the field_1 (Numeric Datatype) since the data file contains the character value (i.e)abcdefghij

    Good question for this forum:
    Export/Import/SQL Loader & External Tables
    Werner

Maybe you are looking for

  • Purchase item not showing in cloud

    I deleted a couple TV shows that I had purchased and trashed them.  I thought they would show up as being in the cloud but I don't see that.  Do you know why?

  • Soap over JMS issue

    Hi, I have following issue.. Following is the architecture:- System1----->MQ--->OSB----->System2 Now SYSTEM1 is a java client, and OSB have a SOAP proxy service... Now i m not able to figure out how to make this senario work??? How can a Java Client

  • Stuck on finder with pinwheel and no icons! help!

    Upgraded to 10.5 on eMac G4 and will load up to finder but gets stuck before any icons pop up. Just a spinning pinwheel. Tried booting from install disk and repairing but everything seems fine from there. Any suggestions?!?

  • External service order-pm03

    Hi, What are the step sin preparing external service order-pm03 a .with manpower b. with stockable items c. non stockable items d. how the cost sceanario to be captured. RSV

  • Usint thread to control PWM loop

    Hi am new to Java and am struggling with a probelm. The application is to control 4 motors connected to the parallel port. When the user presses a button the motor is set to a certain speed (byte output to port). Once the button is released the port