C#에서 오라클 SYS_REFCURSOR 사용 방법

조회수 2278회

C#에서 SYS_REFCURSOR을 사용한 프로시저를 사용하려고 하는데 아래와 같은 에러가 나네요. 확인 부탁 드리겠습니다.

--소스

using System;
using System.Data;
using System.Windows.Forms;
using Oracle.DataAccess.Client;
//using System.Data.OracleClient;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string connStr = "Data Source=KRTSR ;User ID=sfaadmin;Password=Password1;";
            DataSet dataset = new DataSet();

            using (OracleConnection objConn = new OracleConnection(connStr))
            {
                OracleCommand objCmd = new OracleCommand();
                objCmd.Connection = objConn;
                objCmd.CommandText = "SP_OUT_CURSOR_EXAMPLE";
                objCmd.CommandType = CommandType.StoredProcedure;
                objCmd.Parameters.Add("V_PARAM", OracleDbType.Char).Value = "param2"; // Input id
                objCmd.Parameters.Add("V_OUT", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

                try
                {
                    objConn.Open();
                    objCmd.ExecuteNonQuery();
                    OracleDataAdapter da = new OracleDataAdapter(objCmd);
                    da.Fill(dataset);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
                objConn.Close();
            }

        }

        }
    }

--에러 메시지

이미지

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)