我的C#(.NET 4.0)应用程序正在PL / SQL数据库中调用存储过程。我添加了名称空间System.Data.OracleClient,并添加了参数,但是每当我运行它时,都会出现一个异常,指出参数不匹配。

我认为问题是因为我的参数类型为DbType.String或OracleType.VarChar。在线阅读显示,人们使用了另一个称为OracleDbType的枚举(例如,OracleDbType.VarChar2)。

那么,如何访问此枚举?

 OracleParameter returnParam = new OracleParameter("result", DbType.Xml);
            returnParam.Direction = ParameterDirection.ReturnValue;
            objCmd.Parameters.Add(returnParam);

            OracleParameter param1 = new OracleParameter("pivequivalentinstrument", DbType.String);
            param1.Direction = ParameterDirection.Input;
            param1.Value = EquivalentInstrKey;
            objCmd.Parameters.Add(param1);

最佳答案

OracleDbTypeODP: Oracle.DataAccess.Client而不是deprecated System.Data.OracleClient,请尝试使用ODP,并且它应该存在。

关于c# - 如何访问枚举OracleDbType?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4970930/

10-11 03:37