Добавление параметров в PL / SQL в visual studio - PullRequest
0 голосов
/ 10 ноября 2018

Я написал процедуру-

create or replace procedure cv(x in int,y in int,z in varchar)
as
cursor c
is
select email,collegename,cgpa,compname
from student_cv
where (cgpa>=x and yearsofexp>=y) and compname=z;
tem c%rowtype;
begin
open c;
loop
fetch c into tem;
exit when c%notfound;
insert into temp values(tem.email,tem.collegename,tem.cgpa,tem.compname);
end loop;
end;
/

и теперь на основе двух значений поля со списком (которые вводит пользователь) и 1 локальной строки составляют параметры, переданные моей процедуре.

Это код, который я использую-

 //DB_connect();
                string oracleb = "Data source=HPPRO58; user ID=system; password=deb;";
                conn = new OracleConnection(oracleb);
                //conn.Open();
                conn.Open();
                String x3 = "google";
                String x1 ;
                String x2;
                String s1 = "delete from temp";
                OracleCommand comm = new OracleCommand(s1, conn);
                comm.ExecuteNonQuery();

               // System.Data.OracleClient.OracleCommand comm2 = new System.Data.OracleClient.OracleCommand();
                OracleCommand comm2 = new OracleCommand();
                String s2 = "cv";
                comm2.Connection = conn;
                comm2.CommandText = s2;
                comm2.CommandType = CommandType.StoredProcedure;
                comm2.Parameters.Add("x", System.Data.OracleClient.OracleType.Number).Value = comboBox1.Text;
                comm2.Parameters.Add("y", System.Data.OracleClient.OracleType.Number).Value = comboBox2.Text;
                comm2.Parameters.Add("z", System.Data.OracleClient.OracleType.VarChar).Value = x3;
                //comm.Parameters.Add("x", OracleType.Number).Value = comboBox1.Text;
                comm2.ExecuteNonQuery();

                String s3 = "select * from temp";
                OracleCommand comm3 = new OracleCommand(s3, conn);
                OracleDataAdapter MyAdapter3 = new OracleDataAdapter();//adapter acts as interface btw database and dataset(which is collectio of tables)
                MyAdapter3.SelectCommand = comm;
                DataTable dTable3 = new DataTable();//datatable represents a single table in database 
                MyAdapter3.Fill(dTable3);
                dataGridView1.DataSource = dTable3;
                conn.Close();

но при запуске этого кода отображается сообщение об ошибке -

enter image description here

и строка 59 - -

 comm2.Parameters.Add("x", System.Data.OracleClient.OracleType.Number).Value = comboBox1.Text;

поэтому я думаю, что есть некоторая проблема в объявлении параметров в моем коде

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...