On Tue, Jan 27, 2009 at 08:51:10PM +0100, Peter J. Holzer wrote:
> On 2009-01-27 15:21:55 +0000, Martin Evans wrote:
> > I'm working with DBD::Oracle at the moment and getting a little frustrated 
> > with 
> > integer numbers. I'd like my database returned integers to look like 
> > integers 
> > to Perl but they currently don't until I add 0 to them. Here is the problem:
> 
> I think this is on purpose. Oracle numbers have a huge precision (38
> decimal digits), so in general you cannot convert them to a perl number
> without losing precision. DBD::Oracle could be smart enough to recognize
> the safe cases (integers with at most 9 (32 bit) resp. 18 (64 bit)
> digits), but AFAIK it isn't. Your best bet is probably explicitely
> binding with an approriate type (SQL_INTEGER).

That would be the right way to do it, but DBD::Oracle doesn't support
it at the moment.

Tim.

Reply via email to