Sequence.nextval numeric type in Oracle 10g differs from Oracle 8i when using MS OleDb provider
A bug I noticed which doesn't seem to be posted on usenet, nor
recognized by Oracle (who didn't want to help unless we had been using
their ADO.NET provider...):
We used to retrieve the sequence id, mysequence.nextval, into ADO.NET.
This was returned as a decimal and so we cast it directly to a
decimal. However, when we upgraded the Oracle database to 10g, the
code broke because the value thus returned was then a double
(which .NET can't seem to cast to a decimal - go figure). We were
using Microsoft's generic OleDb provider to access the Oracle
The fix, it turns out, is to use the Oracle OleDb provider (Provider =
OraOLEDB.Oracle). This provides a drop-in replacement for the
Microsoft OleDb provider, and thus obviates the need for making
changes to the code (which for us would have been a pain). Hopefully
there are no significant differences otherwise between the two
I hope this helps someone else who may also come across this problem.
|All times are GMT. The time now is 06:24 AM.|
Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.