we recently upgraded an application (.NET 2.0) that we maintain to use Oracle 11g. The application uses MS Enterprise Library 2.0. We've found that when the database.ExecuteNonQuery(Oracle.DataAccess.Client.OracleCommand) method is called, it bombs when the stored procedure expects a parameter as a number, but receives a string. This didn't happen prior to upgrading. If I cast the parameter to an Int, I don't recieve the error. Has anyone encountered this issue? Was something possible missed during the upgrade? The issue occurs regardless if we are hitting an 11g database, or a 10g database开发者_运维知识库.
I apologize if this question is vague.
Thanks for the help.
EDIT: I neglected to mention that this same issue does not occur when ExecuteDataReader is called (handles implicit conversion of the datatype).
You really should change your code such that you are passing the correct data type to the stored procedures.
Sounds like they are finally enforcing this.
精彩评论