FIX: .NET Provider for Oracle Generates ORA-01458 When Calling an SP That Has More Than One Output Parameter (329163)
The information in this article applies to:
- Microsoft ADO.NET (included with the .NET Framework) 1.0
This article was previously published under Q329163 SYMPTOMS With Microsoft .NET Managed Provider for Oracle, when you
try to execute an Oracle stored procedure that has more than one output
parameter of data type Number, you receive the following error message: ORA-01458: invalid length inside variable character
string CAUSE This error occurs because of a bug in Microsoft .NET
Managed Provider for Oracle. RESOLUTIONA supported
fix is now available from Microsoft, but it is only intended to correct the
problem that is described in this article. Apply it only to computers that are
experiencing this specific problem. This fix may receive additional testing.
Therefore, if you are not severely affected by this problem, Microsoft
recommends that you wait for the next that contains this hotfix. To
resolve this problem immediately, contact Microsoft Product Support Services to
obtain the fix. For a complete list of Microsoft Product Support Services phone
numbers and information about support costs, visit the following Microsoft Web
site: NOTE: In special cases, charges that are ordinarily incurred for
support calls may be canceled if a Microsoft Support Professional determines
that a specific update will resolve your problem. The typical support costs
will apply to additional support questions and issues that do not qualify for
the specific update in question.
The P1 version of this fix has the file attributes (or later) that are listed
in the following table. The dates and times for these files are listed in
coordinated universal time (UTC). When you view the file information, it is
converted to local time. To find the difference between UTC and local time, use
the Time Zone tab in the Date and Time tool in Control Panel.
Date Time Version Size File name
----------------------------------------------------------------------
19-Sep-2002 21:57 1.0.1080.0 290,816 System.data.oracleclient.dll
WORKAROUND To work around this problem, use one of the following
methods:
- If you manually set the parameters, you can change the
direction of the output parameters of type Number from Output to InputOut, and set a value of 0.
- If you are retrieving parameter information by means of
the OracleCommandBuilder.DeriveParameters method, there is no direct workaround. You have to install this
hotfix, or wait for the next release that includes this hotfix.
STATUSMicrosoft
has confirmed that this is a problem in the Microsoft products that are listed
at the beginning of this article.
REFERENCES
Modification Type: | Minor | Last Reviewed: | 10/11/2005 |
---|
Keywords: | kbHotfixServer kbQFE kbbug kbfix KB329163 |
---|
|