dotConnect и вызывающая процедура с проблемой параметров - PullRequest
0 голосов
/ 07 сентября 2011

Это мой код для вызова процедуры:

cmd.CommandText = "x.PROCEDURENAME";

cmd.Parameters["V_IID_DOKUMENT_PO"].Value = "1";
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = Convert.ToInt32(x.Text);
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = x.Text;
cmd.Parameters["x"].Value = "1";
cmd.ExecuteNonQuery();

но я получаю

Параметр с именем 'V_IID_DOKUMENT_PO' не содержится в этом Коллекция параметров.

если я проверю в БД

PROCEDURE PROCEDURENAME
 (V_IID_DOKUMENT_PO IN NUMBER
  ...

что я делаю не так?

Если я использую:

cmd.Parameters.Add("V_IID_DOKUMENT_PO", OracleDbType.Number, 1);

я получаю неверное заявление sql

Ответы [ 2 ]

2 голосов
/ 07 сентября 2011

Вы указали, что это хранимая процедура, которую вы вызываете ??

например. у вас есть какая-то строка (пример кода, который вы разместили, кажется неполным):

cmd.CommandType = CommandType.StoredProcedure;
1 голос
/ 07 сентября 2011

Использование,

cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.Add("V_IID_DOKUMENT_PO", OracleDbType.Number).Value=1;
...