Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запрос с параметрами, OracleParameter 
V
    Опции темы
Gesha
  Дата 31.3.2006, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 5.10.2005

Репутация: нет
Всего: 2



Код

int mmm=2;
int ppp=3;
string vvv="строка";
OracleConnection con = new OracleConnection("кон.стринг");
OracleTransaction txn = con.BeginTransaction(IsolationLevel.ReadCommitted);
OracleCommand cmd = new OracleCommand("insert into A (C, M, P, V) VALUES (1, :m, :p, :v)", con);
cmd.Parameters.Add("m", OracleDbType.Int32, mmm, ParameterDirection.Input);
cmd.Parameters.Add("p", OracleDbType.Int32, ppp, ParameterDirection.Input);
cmd.Parameters.Add("v", OracleDbType.Varchar2, vvv, ParameterDirection.Input);
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
txn.Commit();


В результате получается

1 2 3 строка

если поменять "insert into A (C, M, P, V) VALUES (1, :m, :p, :v)" на "insert into A (C, M, P, V) VALUES (1, :m, :m, :m)" результат тот же.
Т.е. пареметры подставляются не по имени а в зависимости от того, в каком порядке я их добавил в cmd (если порядок добавления изменить, то везультат меняется аналогично). Даже если писать "insert into A (C, M, P, V) VALUES (1, :qwer, :qwer, :qwer)" результат тот же.
В чем причина такого поведения?

Это сообщение отредактировал(а) Gesha - 31.3.2006, 11:14
--------------------
PM MAIL ICQ   Вверх
Gesha
Дата 31.3.2006, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 5.10.2005

Репутация: нет
Всего: 2



Нашел!

Добавляем:
Код

cmd.BindByName = true;


И все начинает работать. Типа false - он смотрит по порядку, true - по имени.
И по умолчанию конечно же FALSE!!!
--------------------
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0508 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.