string Source = " 连接数据库的字符串";
            using (OracleConnection conn = new OracleConnection(Source))
            {
                OracleCommand oracmd = new OracleCommand("ProcedureName", conn);
                oracmd.CommandType = CommandType.StoredProcedure;
                conn.Open();
                try
                {
                    oracmd.Parameters.Add("input1", OracleType.VarChar, 30).Value = texBox1.Text;//输入参数
                    oracmd.Parameters.Add("input2", OracleType.VarChar,30).Value = texBox2.Text;
                    oracmd.Parameters.Add("input3", OracleType.VarChar,30).Value = texBox2.Text;
                    
                    oracmd.Parameters.Add("output", OracleType.VarChar, 50).Direction = ParameterDirection.Output;//输出参数
                    oracmd.ExecuteNonQuery();                    string Result = oracmd.Parameters["output"].Value.ToString();
                    lab_Result.Text = Result.ToString();
                }
                catch (OracleException oe)
                {
                    MessageBox.Show("出錯信息!", oe.ErrorCode.ToString());
                }
            }

解决方案 »

  1.   

    我用select查询表结果是可以显示的.
    我在VS2005的服务器资源管理器中的mywork用户下是可以看到我的存储过程的.
    ...你能给我发一个好使的我参考一下吗?
      

  2.   

    你在oracle里执行接行你的存储过程看能执行吗.看看你的存储过程是编译成功的吗
      

  3.   

    你在oracle里直接执行你的存储过程看能执行吗. 
      

  4.   


    那你就在oracle里调用编译成功的过程.看能调用成功吗.如果你的过程确实存在.肯定是没问题的.