Okay,

  $dbh->do(qq{
    INSERT INTO $fault_db (
                           FAULT_NO,
                           REPORTED_BY,
                           PROJECT_NO,
                           DATE_OCCURRED,
                           DATE_REPORTED,
                           TIME_LOST,
                           ONE_LINE_SUMMARY,
                           ISSUE,
                           NEW_REPORT,
                           ALLOCATED_TO
                          )
      VALUES (?,?,?,?,?,?,?,?,?,?)
    }, undef,
           $fault_no,
           $reported_by,
           $project_no, 
           $date_occurred, 
           $date_reported,
           $time_lost,
           $one_line_summary, 
           $issue,
           'Y',
           'NOT YET ALLOCATED'
          );
  
Even after defining all columns, I still get the error:

DBD::Oracle::db do failed: ORA-01858: a non-numeric character
was found where a numeric was expected (DBD: oexec error) at
ff_report.cgi line 488. 

The types of each column in the database are:

NAME,TYPE,NULLABLE
'FAULT_NO','NUMBER(38)','Y'
'REPORTED_BY','VARCHAR2(100)','Y'
'PROJECT_NO','VARCHAR2(10)','Y'
'PROJECT_COMMENTS','VARCHAR2(200)','Y'
'DATE_OCCURRED','undef 9(0)','Y'
'DATE_REPORTED','undef 9(0)','Y'
'TIME_LOST','NUMBER(38)','Y'
'ONE_LINE_SUMMARY','VARCHAR2(200)','Y'
'ISSUE','VARCHAR2(2000)','Y'
'NEW_REPORT','VARCHAR2(1)','Y'
'ALLOCATED_TO','VARCHAR2(100)','Y'
'FIX_STATUS','VARCHAR2(29)','Y'

The trace output is included below:



Many thanks,
        
        Stacy.

2   -> prepare for DBD::Oracle::db (DBI::db=HASH(0x2dab64)~INNER '
    INSERT INTO fault.report (
                           FAULT_NO,
                           REPORTED_BY,
                           PROJECT_NO,
                           DATE_OCCURRED,
                           DATE_REPORTED,
                           TIME_LOST,
                           ONE_LINE_SUMMARY,
                           ISSUE,
                           NEW_REPORT,
                           ALLOCATED_TO
                          )
      VALUES (?,?,?,?,?,?,?,?,?,?)
    ' undef)
    dbd_preparse scanned 10 distinct placeholders
2   <- prepare= DBI::st=HASH(0x3255dc) at DBI.pm line 950
    -> execute for DBD::Oracle::st (DBI::st=HASH(0x3255dc)~0x3257a4
'1440' 'S MADER' 'p000' 'to_date('03-NOV-2001 13:34', 'DD-MON-YYYY
HH24:MI')' 'to_date('03-NOV-2001 16:05', 'DD-MON-YYYY HH24:MI')' '10'
'test.' 'test. please ignore.' 'Y' 'NOT YET ALLOCATED')
       bind :p1 <== '1440' (type 0)
       bind :p1 <== '1440' (size 4/5/0, ptype 4, otype 1)
       bind :p2 <== 'S MADER' (type 0)
       bind :p2 <== 'S MADER' (size 7/8/0, ptype 4, otype 1)
       bind :p3 <== 'p000' (type 0)
       bind :p3 <== 'p000' (size 4/5/0, ptype 4, otype 1)
       bind :p4 <== 'to_date('03-NOV-2001 13:34', 'DD-MON-YYYY
HH24:MI')' (type 0)
       bind :p4 <== 'to_date('03-NOV-2001 13:34', 'DD-MON-YYYY
HH24:MI')' (size 51/52/0, ptype 4, otype 1)
       bind :p5 <== 'to_date('03-NOV-2001 16:05', 'DD-MON-YYYY
HH24:MI')' (type 0)
       bind :p5 <== 'to_date('03-NOV-2001 16:05', 'DD-MON-YYYY
HH24:MI')' (size 51/52/0, ptype 4, otype 1)
       bind :p6 <== '10' (type 0)
       bind :p6 <== '10' (size 2/3/0, ptype 7, otype 1)
       bind :p7 <== 'test.' (type 0)
       bind :p7 <== 'test.' (size 5/6/0, ptype 4, otype 1)
       bind :p8 <== 'test. please ignore.' (type 0)
       bind :p8 <== 'test. please ignore.' (size 20/21/0, ptype 4, otype
1)
       bind :p9 <== 'Y' (type 0)
       bind :p9 <== 'Y' (size 1/2/0, ptype 4, otype 1)
       bind :p10 <== 'NOT YET ALLOCATED' (type 0)
       bind :p10 <== 'NOT YET ALLOCATED' (size 17/18/0, ptype 4, otype
1)
    dbd_st_execute (for sql f3 after oci f62, out0)...
    !! ERROR: 1858 'ORA-01858: a non-numeric character was found where a
numeric was expected (DBD: oexec error)'
    <- execute= undef at DBI.pm line 951
    !! ERROR: 1858 'ORA-01858: a non-numeric character was found where a
numeric was expected (DBD: oexec error)'
    <- do= undef at ff_report.cgi line 488
    -> DESTROY for DBD::Oracle::st (DBI::st=HASH(0x325474)~INNER)
    <- DESTROY= undef at ff_report.cgi line 488
    -> DESTROY for DBD::Oracle::st (DBI::st=HASH(0x3257a4)~INNER)
    <- DESTROY= undef at ff_report.cgi line 488
    -> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x2dab64)~INNER)
    <- DESTROY= undef at ff_report.cgi line 488

Reply via email to