Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: SQL Loader Help in 8.1.6

RE: SQL Loader Help in 8.1.6

From: Aponte, Tony <AponteT_at_hsn.net>
Date: Fri, 23 Mar 2001 16:52:03 -0800
Message-ID: <F001.002D6CDA.20010323143039@fatcity.com>

Is
your mainframe using EBCDIC?  If so there is a translation table that explains what the "}" translates into.  The sign of the field is trailing (E.I.. at the end of the field for non-Cobolers)
<SPAN

class=800445621-23032001> 
These
indicate that the sign of the number is negative.
<SPAN

class=800445621-23032001>}=0
<SPAN

class=800445621-23032001>R=9
<SPAN

class=800445621-23032001>Q=8
<SPAN

class=800445621-23032001>P=7
<SPAN

class=800445621-23032001>O=6
<SPAN

class=800445621-23032001>N=5
<SPAN

class=800445621-23032001>M=4
<SPAN

class=800445621-23032001>L=-
<SPAN

class=800445621-23032001>K=-
<SPAN

class=800445621-23032001>J=1
 
These
are for positive numbers:
<SPAN

class=800445621-23032001>{=0
<SPAN

class=800445621-23032001>A=1
<SPAN

class=800445621-23032001>B=2
<SPAN

class=800445621-23032001>C=3
<SPAN

class=800445621-23032001>D=4
<SPAN

class=800445621-23032001>E=5
<SPAN

class=800445621-23032001>F=6
<SPAN

class=800445621-23032001>G=7
<SPAN

class=800445621-23032001>H=8
<SPAN

class=800445621-23032001>I=9
<SPAN

class=800445621-23032001> 
The
example you mentioned (000000}) is really all zeroes.  A value of 1023A really equals 10231.  An example of a negative number would be 112233R which equals -1122339.  The Utilities manual might have a sample of how to convert external numbers with trailing signs.  You could also code a function to do translation and return the resulting number.  Then you can use it in the SqlLdr control file.
<SPAN

class=800445621-23032001> 
Tony
Aponte
<FONT

size=2><FONT color=#0000ff
face=Arial> 
<SPAN

class=800445621-23032001> -----Original Message-----From: Wendy Y [mailto:lannyue_at_yahoo.com]Sent: Friday, March 23, 2001 2:47 PMTo: Multiple recipients of list ORACLE-LSubject: SQL Loader Help in 8.1.6

  Dear Experts:
  This does not make any sense to me, can you help me out?   

  I have a control file to interpret the mainframe data and then write to my   table in Oracle Database.
  The mainframe data looks like "000000000}",  The table is designed as   Number(10,2),  The control file use zoned(10,2).   All these combination will work fine on Oracle 7.3/8.0.5, but will fail on   8.1.6. (the message said: rejected on XXX field)   If I modify table as Varchar2(10), it will work, but the data format is not   the way I want. the format should be "0.00" when it's 0, instead of "00000".   Also "+" or "-" should be able to display. How can I make this work in   8.1.6?
  Here are part of the control file:
  LOAD DATAREPLACEINTO TABLE
  C_FINANCIAL           
  (CONSOLI_ID              
  POSITION(001:003) CHAR, ....
              
  TAX_CREDIT_AMT          
  POSITION(177:186) zoned(10,
  2),            
  QTY_ORIGINAL            
  POSITION(187:196) zoned(10),... )
   
  Thanks
  Wendy      

  Do You Yahoo!?<A
  href="http://personal.mail.yahoo.com/?.refer=mailiyfoot">Yahoo! Mail Personal   Address - Get email at your own domain with Yahoo! Mail. Received on Fri Mar 23 2001 - 18:52:03 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US