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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Numeric Output problem with 'MS ODBC Driver to Oracle'/Access'97/Oracle

Re: Numeric Output problem with 'MS ODBC Driver to Oracle'/Access'97/Oracle

From: L.Y. Lam <cclylam_at_cityu.edu.hk>
Date: Wed, 5 May 1999 10:02:16 +0800
Message-ID: <7go8lv$26u2@news1.cityu.edu.hk>


Yes, obviously.
However, the point is 'Is it reasonable to have signed integer of word size handling all numeric constant problems?'. Accepting this as "reasonable" means that no support in decimal constant of numeric type and no support in numeric constant larger than 32,767 or less than -32,768.
Fortunately, I found this problem with MS Access pass-through query only. Thanks for your information.
Rgds.

Edward A. Geddis <egeddis_at_openlinksw.com> wrote in message news:f80W2.31$xe7.77592_at_client.news.psi.net...
> Ly,
>
> This seems to be a limitation of the data type for the field:
>
> Setting Description
> Decimal precision Storage size
> Byte Stores numbers from 0 to 255 (no
> fractions). None
> 1 byte
> Integer Stores numbers from -32,768 to 32,767
> (no fractions). None
> 2 bytes
> Long Integer (Default) Stores numbers from -2,147,483,648 to
2,147,483,647
> (no fractions). None 4 bytes
> Single Stores numbers from -3.402823E38
> to -1.401298E-45 for negative
> values and from 1.401298E-45 to
> 3.402823E38 for positive values.
> 7 4 bytes
> Double Stores numbers from -1.79769313486231E308
> to
> -4.94065645841247E-324 for
negative
> values and from
> 1.79769313486231E308 to
> 4.94065645841247E-324 for positive
> values.
> 15 8 bytes
> Replication ID Globally unique identifier (GUID)
> N/A 16 bytes
>
> --
> Thanks,
>
> Edward A. Geddis
> Technical Support Consultant
> OpenLink Software
> http://www.openlinksw.com
> Making Technology Work for You
>
> LY Lam <LY.LAM_at_cityu.edu.hk> wrote in message
> news:3727CFAB.FDDAFA85_at_cityu.edu.hk...
> > Dear Reader,
> >
> > Please help identifying the following problem.
> >
> > DETAILS:
> > I created a pass-through query in MS Access as shown below. We are
> > running Oracle in UNIX host as our back-end database, and use 'Microsoft
> > ODBC driver to Oracle' and MS Access'97 as front-end tools.
> >
> > select 40000
> > from dual
> >
> > The version of our back-end database is Oracle 7.3.
> > The error message as shown below is returned when the query executes:
> > 'ODBC--call failed', and '[Microsoft][ODBC driver for Oracle]Error in
> > column 1: Numeric value out of range [#0]', one after another.
> >
> > When the number quoted in the query decreases to 32767, it works as
> > expected. It continues to work until the number is less than -32768.
> > Besides, the query with decimals like the following one returns only the
> > integer portion 100 instead of the expected 100.125.
> > select 100.125
> > from dual
> >
> > I don't need to know the workaround since I've already had one. The
> > reason why it is so is my main concern.
> > Will it be a bug in MS Access? Or, is it a limitation of the ODBC driver
> > that it handles number with signed integer of size 2^15?
> > Or, is it a problem with the Oracle Server? If it is a know
> > problem, please tell me the key to the source of information.
> >
> > Actually, I have emailed to Microsoft with this question in early-March.
> > They have not given any advice up till now.
> >
> > Your help is much appreciated.
> >
> > Rgds.
>
>
Received on Tue May 04 1999 - 21:02:16 CDT

Original text of this message

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