使用C#错误从Oracle数据库中获取存储过程

时间:2017-08-01 10:42:12

标签: .net oracle c#-4.0

我正在使用C#尝试连接供应商Oracle数据库中的存储过程。我已安装Oracle Net Manager并设置我的连接并在tnsnames.ora中验证它 - 测试连接是否正常。

我有一些c#,但是当我运行它时,我收到以下错误:

System.Data.OracleClient.OracleException:ORA-06550:第1行,第27列: PLS-00225:子程序或游标'MAIN'参考超出范围 ORA-06550:第1行第7列: PL / SQL:忽略语句

这是我的c#代码:

 public string StoredProc()
            {

                    string response = "default";

                    string cnn = ConfigurationManager.ConnectionStrings["OracleConnectionString"].ConnectionString;


                    try
                    {
                        using (OracleConnection conn = new OracleConnection(cnn))
                        {
                            conn.Open();

                            OracleCommand cmd = new OracleCommand();
                            cmd.Connection = conn;

                            cmd.CommandText = "MyStoredProc";

                            cmd.Parameters.Add(new OracleParameter("applicationid", "App1"));


                            cmd.CommandType = CommandType.StoredProcedure;

                            OracleDataReader dr = cmd.ExecuteReader();
                            dr.Read();

                            if (dr.Read())
                            {
                                response += dr["result"].ToString();
                            }

                            dr.Close();
                            cmd.Dispose();
                            conn.Close();
                        }


                        return response;

                    }
                    catch (Exception Error)
                    {
                        return response += Error.Message;
                    }
            }

我之前从未使用过甲骨文,因此感谢任何帮助:)

感谢

0 个答案:

没有答案