Find a non-numeric character in a string

I have a 3 strings (1) 'AB99CDEFGH0012%' (2) 'ABCDEFGH' (3) 'ABCD11'
how do i find out a that string has non numeric characters
Thanks

SELECT TO_NUMBER(:String) FROM DUAL;
is a quick way to find out :)
A good method would be.....
SELECT 1 FROM DUAL WHERE TRANSLATE(:String, 1234567890, '-') IS NOT NULL;
The statement will filter out ALL numbers, leaving behind any characters, A, B, @, ~, etc...

Similar Messages

  • Replace Non-Numeric Characters with a Numeric Character in a String

    Hi Guys,
    I need to replace all the non-numeric characters (including embedded blanks & hyphen) in a string to a numeric character '1'.
    The trailing blanks should not be replaced.
    e.g. "P22233344455566" should be changed to "122233344455566"
    &    "49-1234567           " should be changed to "4911234567          "
    Please help.

    Use [replace|http://help.sap.com/abapdocu_70/en/ABAPREPLACE_IN_PATTERN.htm] with a regular expression to translate any non-numeric character (i.e. any character not between 0 and 9) to 1:
      REPLACE ALL OCCURENCES OF REGEX '[^0-9]' IN value WITH '1'.
    Cheers, harald
    p.s.: In older releases [translate|http://help.sap.com/abapdocu_70/en/ABAPTRANSLATE.htm] would also do the trick, but is more lengthy, because one would need to specify each individual character that should be replaced, e.g.:
      TRANSLATE value TO UPPER CASE.
      TRANSLATE value USING
          ' 1_1-1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1'.

  • ORA-01858: a non-numeric character was found where a numeric was expected

    hi ,
    This was the code which shows the sales rep invoice amount and collected amount but while running report thru concurrent program its showing the following error:
    ORA-01858: a non-numeric character was found where a numeric was expected
    WHERE TO_CHAR ( TO_DATE ( PS.GL_DATE , 'DD/MON/YY' ) , 'MON-YYYY' ) BETWEEN TO_CHAR ( TO_DATE ( : ==> P_todate , 'YYYY/MM/DD' ) , 'MON-YYYY' ) AND TO_CHAR ( TO_DATE ( : P_todate , 'YYYY/MM/DD' ) , 'MON-YYYY' ) AND ps.customer_id = cust.custome
    The Actual Code was this
    SELECT SUBSTR(SALES.name,1,50) salesrep_name_inv,
    --ps.CLASS,
    SUM(ABS(ps.acctd_amount_due_remaining)) acctd_amt,
    SUM(ABS(ps.amount_due_remaining)) amt_due_remaining_inv,
    SUM(ABS(ps.amount_adjusted)) amount_adjusted_inv,
    SUM(ABS(ps.amount_applied)) amount_applied_inv,
    SUM(ABS(ps.amount_credited)) amount_credited_inv,
              SALES.salesrep_id,
    NULL "REMARKS"
    -- ps.gl_date gl_date_inv,
    FROM ra_cust_trx_types ctt,
    ra_customers cust,
    ar_payment_schedules ps,
    ra_salesreps SALES,
    ra_site_uses site,
    ra_addresses addr,
    ra_cust_trx_line_gl_dist gld,
    gl_code_combinations c,
    ra_customer_trx ct
    WHERE TO_CHAR(TO_DATE(PS.GL_DATE,'DD/MON/YY'),'MON-YYYY')
    BETWEEN TO_CHAR(TO_DATE(:P_todate,'YYYY/MM/DD'),'MON-YYYY') AND TO_CHAR(TO_DATE(:P_todate,'YYYY/MM/DD'),'MON-YYYY')
    AND ps.customer_id = cust.customer_id
    AND ps.customer_trx_id = ct.customer_trx_id
    AND ps.cust_trx_type_id = ctt.cust_trx_type_id
    AND NVL(ct.primary_salesrep_id, -3) = SALES.salesrep_id
    AND ps.customer_site_use_id+0 = site.site_use_id(+)
    AND site.address_id = addr.address_id(+)
    AND TO_CHAR(TO_DATE(PS.GL_DATE_CLOSED,'DD/MON/YY'),'MON-YYYY')
    BETWEEN TO_CHAR(TO_DATE(:P_todate,'YYYY/MM/DD'),'MON-YYYY') AND TO_CHAR(TO_DATE(:P_todate,'YYYY/MM/DD'),'MON-YYYY')
    --AND    ps.gl_date_closed > TO_DATE(:P_todate,'MON-YYYY')
    AND ct.customer_trx_id = gld.customer_trx_id
    AND gld.account_class = 'REC'
    AND gld.latest_rec_flag = 'Y'
    AND gld.code_combination_id = c.code_combination_id
    AND sales.salesrep_id is not null and sales.name is not null
    -- and ps.payment_schedule_id+0 < 9999
    -- AND SALES.salesrep_id ='1001'
    GROUP BY SALES.name,
    --ps.CLASS,
    SALES.salesrep_id

    So to_date function accepts a string as input and returns a date. When a date is input instead, it is implicity converted to the required type of the function paremeter, which is a string, so that to_date can convert it back to a date again.
    If you are lucky with the implicit conversion, you get the same date back, if you are not you might get a different date or an error.
    From your query it appears that this conversion from a date, to a string, to a date, and then back to a string using to_char this time, is being done to remove the time or day part of the date. The actual range comparison is being done on strings rather than dates, which is dangerous as strings sort differently than dates.
    In this example if I sort by date, Jan 01 comes between Dec 00 and Feb 01 as you would expect.
    SQL> select * from t order by d;
    D
    12-01-2000
    01-01-2001
    02-01-2001When converted to strings, Feb 01 comes between Dec 00 and Jan 01, which is probably not the desired result
    SQL> select * from t order by to_char(d,'DD-MON-YY');
    D
    12-01-2000
    02-01-2001
    01-01-2001If you want to remove time and day parts of dates you should use the trunc function
    trunc(d) removes the time, trunc(d,'mm') will remove the days to start of month.
    http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14200/functions201.htm#i79761

  • Sqlldr with error: non-numeric character was found when numeric number

    Hi,
    I have been struggling with this problem for long, can't get to anywhere.
    I am trying to use sqlldr to load a CSV file into table, the table looks like this :
    AD_ID NUMBER(38)
    CNTCT_ID VARCHAR2(60)
    AD_FILE_NAME VARCHAR2(80)
    AD_TITLE VARCHAR2(300)
    AGCY_APRVL_DATE DATE
    CORE_APRVL_DATE DATE
    ENTR_CMNT CLOB
    IC_APRVL_DATE DATE
    PURP_TEXT CLOB
    RVW_BRD_APRVL_DATE DATE
    ACTIVE_FLAG VARCHAR2(1)
    .......................................more fields
    The control file looks like this:
    LOAD DATA
    INFILE "C:\ORACLE_IRTMB\IRPADS\SQL_DATA\ADS_T.CSV"
    BADFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.BAD"
    DISCARDFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.DSC"
    truncate INTO TABLE ADS_T
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS
         AD_ID INTEGER ,
         CNTCT_ID char ,
         AD_FILE_NAME char ,
         AD_TITLE char nullif (AD_TITLE=BLANKS) ,
         AGCY_APRVL_DATE DATE "MM/DD/YYYY" nullif (AGCY_APRVL_DATE=BLANKS) ,
         CORE_APRVL_DATE DATE "MM/DD/YYYY" ,
         ENTR_CMNT CHAR(7000) nullif (ENTR_CMNT=BLANKS) ,
    PURP_TEXT CHAR(7000) nullif (ENTR_CMNT=BLANKS) ,
         RVW_BRD_APRVL_DATE DATE "MM/DD/YYYY" ,
         ACTIVE_FLAG char ,
         ....more fields
    The Data file looks like this:
    10132,simpsonl,PMSDHHStemplate.pdf,"Depression, Irritability, Mood Swings Sound Familiar?",1/13/2003,11/14/2002,,1/13/2003,"The NIMH is conducting research on premenstrual
    10133,jolkovsl,10133ClozapineDHHS ver 0.pdf,Mood Swings? Unpredictable Moods? Are These Moods hard to Treat?,1/28/2003,11/14/2002,,1/28/2003,"The NIMH is conducting a study to test the efficacy of ...
    --- and log file looks like this:
    Record 5: Rejected - Error on table ADS_T, column RVW_BRD_APRVL_DATE.
    second enclosure string not present
    Record 7: Rejected - Error on table ADS_T, column RVW_BRD_APRVL_DATE.
    second enclosure string not present
    Record 9: Rejected - Error on table ADS_T, column RVW_BRD_APRVL_DATE.
    second enclosure string not present
    Record 2: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01858: a non-numeric character was found where a numeric was expected
    Record 4: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01858: a non-numeric character was found where a numeric was expected
    Record 6: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01858: a non-numeric character was found where a numeric was expected
    IF I use to_date in control file:
    LOAD DATA
    INFILE "C:\ORACLE_IRTMB\IRPADS\SQL_DATA\ADS_T.CSV"
    BADFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.BAD"
    DISCARDFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.DSC"
    truncate INTO TABLE ADS_T
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS
         AD_ID INTEGER ,
         CNTCT_ID char ,
         AD_FILE_NAME char ,
         AD_TITLE char nullif (AD_TITLE=BLANKS) ,
         AGCY_APRVL_DATE "to_date(:AGCY_APRVL_DATE,'MM/DD/YYYY')" ,
         CORE_APRVL_DATE DATE "MM/DD/YYYY" ,
         ENTR_CMNT CHAR(7000) nullif (ENTR_CMNT=BLANKS) ,
         IC_APRVL_DATE DATE "MM/DD/YYYY" ,
         PURP_TEXT CHAR(10000) nullif (PURP_TEXT=BLANKS) ,
         RVW_BRD_APRVL_DATE DATE "MM/DD/YYYY" ,
    I got extracctly same error message as above...
    If I use to_char in control file:
    LOAD DATA
    INFILE "C:\ORACLE_IRTMB\IRPADS\SQL_DATA\ADS_T.CSV"
    BADFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.BAD"
    DISCARDFILE "C:\ORACLE_IRTMB\IRPADS\ADS_T.DSC"
    truncate INTO TABLE ADS_T
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS
         AD_ID INTEGER ,
         CNTCT_ID char ,
         AD_FILE_NAME char ,
         AD_TITLE char nullif (AD_TITLE=BLANKS) ,
         AGCY_APRVL_DATE "to_char(:AGCY_APRVL_DATE,'MMDDYYYY')" ,
    Then it's said a not valid number
    Record 2: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01722: invalid number
    Record 4: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01722: invalid number
    Record 6: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01722: invalid number
    Record 8: Rejected - Error on table ADS_T, column AGCY_APRVL_DATE.
    ORA-01722: invalid number
    someone, please help me out here.
    Thanks a lot.
    Wei

    hello
    pls use to_date
    If your session is set to default date format of DD-MON-YY, execute the following and you will receive the error message:
    SQL> select to_date('20-JAN-2010', 'DD-MM-YYYY') from dual;
    ERROR:
    ORA-01858: a non-numeric character was found where a numeric was expected
    no rows selected
    When you are converting a string to a date, you have specified that the date is being passed in DD-MM-YYYY format. But you have passed the date in DD-MON-YYYY format. As the month is expected as a number by oracle, but you have passed a character, oracle is unable to translate the string to a number.
    Do one of the following:
    SQL> select to_date('20-JAN-2010', 'DD-MON-YYYY') from dual
    2 /
    TO_DATE
    20-JAN-2010
    OR
    SQL> select to_date('20-10-2010', 'DD-MM-YYYY') from dual
    2 /
    TO_DATE
    20-JAN-2010
    or you can use alter sessin set nls_date_format='.....................';
    regards

  • JDBCaccess message ORA-01858: a non-numeric character was found where a num

    When trying to read a cloumn from a table using JDBC I get the above message
    Below is a copy of the code;
    Connection conn=null;
    DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());
              System.out.println ("Driver registered"); // Print Driver Connected
              try
         {  //  <-- 1.1
              conn = DriverManager.getConnection("jdbc:oracle:thin:@***.******.**:1521:orcl", "********", "*******");
    // @machineName:port:SID, userid, password
              } // <-- 1.1
         catch (SQLException exc_1)
         {     // <-- 1.1
              //System.out.println("SQL Connect failed with: '" + exc_1.getMessage() + "'");
              exc_1.printStackTrace();
              System.exit(1);
         } //<-- 1.1
              System.out.println ("Connected - User/Password"); // Print Connected User/Password
    Statement stmt = conn.createStatement();
         System.out.println ("Instansiate SQL Statement "); // Print Instansiate
              String sql = "select BASE_CURRENCY_CODE from WH_ENT_MODEL.V_FX_DAILY_RATES ";
         try
         oracle.jdbc.driver.OracleLog.startLogging();
         PreparedStatement ps = conn.prepareStatement(sql);
         ResultSet rs = ps.executeQuery();
         oracle.jdbc.driver.OracleLog.stopLogging();
         System.out.println ("Create SQL Statement resultset "); // Print SQL Statement
    while (rs.next())
    System.out.println (rs.getString("BASE_CURRENCY_CODE")); // Print Base_Currency_Code
    stmt.close();
         catch(Exception e)
         e.printStackTrace();
                   System.exit(1);
    The error I get is;
    java.sql.SQLException: ORA-01858: a non-numeric character was found where a numeric was expected
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:153)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:287)
         at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:742)
         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:215)
         at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:930)
         at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1131)
         at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:983)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1257)
         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3467)
         at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3512)
         at com.exchange.interfaces.dbAccess.main(dbAccess.java:69)
    This is a test class to prove we can access the database from within Java program.
    Any help much appreciated.

    Hi Deepak,
    I would first look at your session state, this should show what was passed to the procedure.
    I would suggest that if you have a select list showing a null value that that would be the issue as it passes %null% through.
    Regards
    Michael

  • A non-numeric character was found ...  iAS 8 & ora 8.1.6

    I have a problem in iAS 8 and Oracle 8.1.6 under windows 2000.
    The problem is calling nested packages using plql gateway, I
    mean I call one package and it call's another package, this
    operation throws " a non-numeric character was found where a
    numeric was expected" even if the procedure only has one
    parameter, if you call nested procedures there are no errors, I
    had the same problem on Solaris, however changed databases and
    it dissapear, I thought that the problem was some
    NLS_PARAMETERS however now I'm not pretty sure.
    Any Ideas.
    Thanks in Advance.
    Francisco Castaqeda
    Arango Software Int.

    hello
    pls use to_date
    If your session is set to default date format of DD-MON-YY, execute the following and you will receive the error message:
    SQL> select to_date('20-JAN-2010', 'DD-MM-YYYY') from dual;
    ERROR:
    ORA-01858: a non-numeric character was found where a numeric was expected
    no rows selected
    When you are converting a string to a date, you have specified that the date is being passed in DD-MM-YYYY format. But you have passed the date in DD-MON-YYYY format. As the month is expected as a number by oracle, but you have passed a character, oracle is unable to translate the string to a number.
    Do one of the following:
    SQL> select to_date('20-JAN-2010', 'DD-MON-YYYY') from dual
    2 /
    TO_DATE
    20-JAN-2010
    OR
    SQL> select to_date('20-10-2010', 'DD-MM-YYYY') from dual
    2 /
    TO_DATE
    20-JAN-2010
    or you can use alter sessin set nls_date_format='.....................';
    regards

  • Returning Non-Numeric character

    Hi All,
    Im using Oracle 11gR2. Following is my sample data and i want to search the string having non-numeric characters in it.
    with t as
    select '123' val from dual
    union
    select ' 123' val from dual
    union
    select '1123' val from dual
    union
    select 'A123' val from dual
    union
    select 'x 123' val from dual
    union
    select '#123' val from dual
    select val from t
    where regexp_like (val, '[[:alpha:]|[:blank:]|#]')Query works perfectly for given result set but would break if another string, say '123@', with a special character comes. So is there any format specifier (as we have [:alpha:], [:digit:]) to directly identify non-numeric character including space from a string? If no what is the work round for it?
    Thanks,
    Vivek

    Vivek wrote:
    Query works perfectly for given result set but would break if another string, say '123@', with a special character comes. So is there any format specifier (as we have [:alpha:], [:digit:]) to directly identify non-numeric character including space from a string? If no what is the work round for it?What is your expected output?
    All the strings which contains anything other than digits? You could use TRANSALTE
    select val from t
    where translate(val,'a0123456789','a') is not null;
    --"Add space also if you want to exclude space
    select val from t
    where translate(val,'a 0123456789','a') is not null;
    {code}
    You could use REGEXP_LIKE or REGEXP_REPLACE, but regexp functions are more CPU consuming..
    {code}
    select val from t
    where not regexp_like(val,'^0-9+$');
    {code}
    Edited by: jeneesh on Apr 2, 2013 2:16 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Error while pulling data from an Oracle database. ORA-01858: a non-numeric character was found where a numeric was expected

    I'm trying to pull data from an Oracle database using SSIS. When I try to select a few fields from the source table, it returns the following error message:
        [OLE DB Source [47]] Error: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E14.
        An OLE DB record is available.  Source: "OraOLEDB"  Hresult: 0x80040E14  Description: "ORA-01858: a non-numeric character was found where a numeric was expected".
        An OLE DB record is available.  Source: "OraOLEDB"  Hresult: 0x80004005  Description: "ORA-01858: a non-numeric character was found where a numeric was expected".
    The source columns are a combination of numeric and texts, and I've also tried selecting one of them, which didn't work. I'm using the Oracle client 11.2.0.1, and it works fine with any other data sources I have connected to so far. How can I resolve this
    error?

    Hi H.James,
    According to your description, the issue is a non-numeric character was found where a numeric was expected while pulling data from an Oracle database in SSIS.
    Based on the error message, the issue should be you are comparing a number column to a non-number column in a query. Such as the query below (ConfID is a number, Sdate is a date):
     where C.ConfID in (select C.Sdate
                       from Conference_C C
                       where C.Sdate < '1-July-12')
    Besides, a default behavior for the Oracle OleDb Provider that change the NLS Date Format of the session to 'YYYY-MM-DD HH24:MI:SS can also cause the issue. For more details about this issue, please refer to the following blog:
    http://blogs.msdn.com/b/dataaccesstechnologies/archive/2012/01/20/every-bug-is-a-microsoft-bug-until-proven-otherwise.aspx
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Non-numeric character error

    This is my error:
    javax.servlet.ServletException: ORA-01858: a non-numeric character was found where a numeric was expected
    This is my code:
    ResultSet myRs = myStmt.executeQuery("select count(*) dexCount from cs_dexia where userid = '" + vUserid + "'");
              int vCount = 0;     
                   while(myRs.next()){
                        vCount = myRs.getInt("dexCount");
              out.println(vCount);
                   if(vCount > 0)
                   response.sendRedirect("swapform.jsp");
    What have I done wrong?

    I have changed that and am now getting:
    javax.servlet.ServletException: ORA-00904: invalid column name
    the query runs in my sql tool no problem, could it be something to do with the alias?

  • Non-hex character in hex string

    I'm getting this messsage when I try to open an Illustrator file:
    "Acrobat PDF file format is having difficulties. Non-hex character in a string."
    I', using illustrator CS6 and I need my file opened..!

    Nobody can know without seeing the file and having more info about your system. Does the file open in Acroibat/ Adobe Reader for instance?
    Mylenium

  • Non-Alphanumeric Character in a String

    I understand if we have a non-alphanumeric character in a String, we have to put a backward slash in front of that character. For example, we have to put a backward slach in front of a "backward slash". Eg. we do \\ to put a backward slash in a String.
    What about a dot (.) or a dash (-)? Do we have to do the same thing?

    No, it's only for control characters like "newline", characters with special meaning in strings i.e. " and \ and any character that can't be represented in the character encoding of your java source file.

  • ORA-01858: a non-numeric character found where a digit was expected

    Hi,
    I'll cut introductions short. We're trying to read data from a flat file (OWB ver.9.2. by the way). After successfully mapping, then generating (with two insignificant warnings), we execute.
    Although it says the execution was 'successful', more than a dozen errors return in the form of ORA-01858: a non-numeric character found where a digit was expected
    a - Here is the error:
    Record 1: Rejected - Error on table "TOPSSTAGE"."FLTR_DCS_IRREG", column "OPERATIVE_FLIGHT_LEG_DATE".
    ORA-01858: a non-numeric character was found where a numeric was expected
    *it's actually repeated 20 times (Record 1, Record 2, and so on and so forth...) with the same exact error description and details.
    b - Here's the part of the OWB-generated script that defines the creation of that field/column:
    "OPERATIVE_FLIGHT_LEG_DATE" DATE "mm/dd/yyyy"
    c - And here's the data from the flat file (1 of 4 rows)
    "2/20/2007","I","0899","N","TPE","MNL","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","750","950","746","955"," P3231",,"04","32","32",,,,,,,,"758","946",,"A000","4","D000","5","000","0","0","0","0","D","P","0","0","0","0","0","0","0","0","0","0","0","2/22/2007","000","012","144","2/20/2007","2/20/2007"
    *the part where it is in bold is the one that is mapped from the column OPERATIVE_FLIGHT_LEG_DATE to the OPERATIVE_FLIGHT_LEG_DATE column (flat to physical, right?)
    it is set as DATE in all settings (mapping, file, etc..)
    Any form of help will be greatly appreciated :)
    Thanks!
    Regards,
    _lilim                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    Hi Bharadwaj,
    Yes, I believe you are right. And yes that column is designated a primary key. The weird thing is, we do have null values being entered into the table from the flat file, but these values are far from the "OPERATIVE_FLIGHT_LEG_DATE" column (index-wise). Let me give you an example of our case:
    this is a row in the flat file: (sample data only)
    "2/20/2007","I","0899","N","TPE","MNL","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","750","950","746","955"," P3231",,"04","32","32",,,,,,,,"758","946",,"A000","4","D000","5","000","0","0","0","0","D","P","0","0","0","0","0","0","0","0","0","0","0","2/22/2007","000","012","144","2/20/2007","2/20/2007"
    as you can see, I've made the 'null' values bold, as well as the data for OPERATIVE_FLIGHT_LEG_DATE (which shows up, as you can see, at the end of the row).
    Now, in the OWB table, the OPERATIVE_FLIGHT_LEG_DATE column is set as a primary key (or foreign, i think, I'll check again) and, thus, is set as one of those columns to first receive data transferred from the flat file.
    We see nothing wrong with our mask (which is mm/dd/yyyy by the way) as well as with our data type settings. It has to be with the flat file I guess. We're gonna try putting in dummy values in place of the null ones in the flat file. I'll get back to you asap. Thanks for helping out. :D
    Regards,
    _lilim

  • 01858: a non-numeric character was found where a numeric was expected

    Hi ,
    I had ran a code
    SELECT TO_DATE (create_date,'MM/DD/YYYY HH12:MI:SS PM')
      FROM   TABLE_A
    where i got error
    -01858: a non-numeric character was found where a numeric was expected
    but later i changed to
    SELECT TO_CHAR (create_date,'MM/DD/YYYY HH12:MI:SS PM')
      FROM   TABLE_A
    which did the trick for me and i dint get any error.
    Hope this helps you.
    Documenting this for others.

    Check the NLS_DATE_FORMAT parameter value of your database.
    SELECT sysdate FROM dual; -- You can see the current format
    NLS_DATE_FORMAT specifies the default date format to use with the TO_CHAR and TO_DATE functions. The default value of this parameter is determined by NLS_TERRITORY.
    The value of this parameter can be any valid date format mask, and the value must be surrounded by double quotation marks. For example:
    NLS_DATE_FORMAT = "MM/DD/YYYY"
    From the error , I can guess your format would be 'DD-MM-YYYY', thats why when you tried to convert your date (12-AUG-2013) with (MM-DD-YYYY), you are getting the mentioned error.
    Set the NLS_DATE_FORMAT value to 'MM-DD-YYYY' as below and try.
    ALTER session SET nls_date_format='MM-DD-YYYY'

  • Non-numeric character was found where a numeric was expected

    getting the error: non-numeric character was found where a numeric was expected
    I know it's something with the variable InpMaand and InpJaar who i use in mij select statement of the cursor c_sleutel. But don't know how to fix it. Searched on the forum but no good answer found. Tnx for helping in advanced. see code below:
    CREATE OR REPLACE PROCEDURE T05_ins_f (InpJaar in number, InpMaand in number) IS
    cursor c_sleutel is
    select distinct(sleutel) as sleutel from TR_ROSETTA
    where eenheid = 'KPL'
    and to_date('01-'||(InpMaand)||'-'||(InpJaar)) between datum_van and datum_tot ;
    begin
    Message was edited by:
    user565199

    I've fit in the to_date format. but now he say's not a valid month. What i do is the following.
    InpMaand and InpJaar are both giving in by the user, like 2 and 2007
    after the to_date function, this must be the result: 01-2-2007
    otherwise: how to use the variable(InpMaand and InpJaar ) in the to_date function
    Message was edited by:
    user565199

  • Find and print illegal character in a string using regexp

    I have the following simple regexp that checks for illegal characters in a string:
    String regexp = ".*([\\[\\];]+|@).*"; // illegal: [ ] ; @
    String input = "Testing [ 123";
    System.out.println(Pattern.matches(regexp, input));How can I find and print the character that is invalid??
    I've tried using the Matcher class togheter with Pattern but cant get it to work. :(
    Like this:
    Pattern pattern = Pattern.compile(regexp);
    Matcher matcher = pattern.matcher(input);
    matcher.lookingAt();
    int matchedChar = matcher.end();
    if (matchedChar < input.length()) {
        String illegalCharFound = String.valueOf(input.charAt(matcher.end()));
        System.out.println(illegalCharFound);
    }What am I doing wrong?

    1. You call lookingAt(), but you don't check its return value, so you don't know if the regex actually matched.
    2. matcher.end() returns the index of the character following whatever was matched, assuming there was a match (if there wasn't, it will throw an exception). So either it will point to a legal character, or you'll get a StringIndexOutOfBoundsException because an illegal character was found at the end of the input. The start() method would be a better choice, but...
    3. Your regex can match multiple consecutive square brackets or semicolons (and why not put the at-sign in the character class, too?), but you're acting like it can only match one character. Even if there is only one character, group(1) is an easier way to extract it. Also, if there are more than one (non-consecutive) illegal characters, your regex will only find the last one. That's because the first dot-star initially gobbles up the whole input, then backtracks only as far as it has to to satisfy the rest of the regex. If your goal is to provide feedback to whoever supplied the input, it's going to be pretty confusing feedback. You should probably use the find() method in a loop to pick out all the illegal characters so you can report them properly.

Maybe you are looking for

  • Unable to import any video

    I have iPhoto 9.5.1 running on Mavericks. The issue first appeared when iPhoto refused to import the only two movie files on my iPhone 5S running iOS 8, stating the two .mov files were in an unrecognizable format. I used the Image Capture tool to pul

  • How to use ZoneView in a JTextArea or JTextPane?

    i would like to view an large file (25MB with about 600.000 rows) in a JTextArea or JTextPane. As I know the JTextArea creates for each line of the document at least one object, due to this fact it consumes about 330MB (for the file mentioned above)

  • Problem with getCodeBase()

    I have a problem with the deployment of a 'jarred' applet. Here's my directory structure (in a web module); applets myjar.jar data.txt webpages mypage.jsp myjar.jar contains an applet. mypage.jsp has an applet tag that includes this line: archive="..

  • Keyword and description not included in the Page Properties window

    There is no  Keyword and Description option in the Page Properties window (metadata). The only item available is HTML as <head>. How do I get Keyword and Description options included?

  • Exception in thread "main" java.lang.UnsatisfiedLinkError: /opt/oracle/libo

    Hi, I"m using Mac OS X (32 bit) and trying to connect to an Oracle 10g server via JDBC. I just installed the Mac OS X 10.2 Instant Client Package - Basic Lite from here -- http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/intel_