Re[2]: SetSpCommand
От: Аноним  
Дата: 22.12.06 09:13
Оценка:
Здравствуйте, Блудов Павел, Вы писали:

БП>Попробуйте

БП>
using(DbManager db = new DbManager())
{
  db.SetSpCommand("INSERTDATA", db.CreateParameters(data, new string[]{"ID"})).ExecuteNonQuery(null, data);
}


Так и сделал, просто не хотелось делать лишних телодвижений.

Y>>а почему не p.Direction = param.Direction; ?

БП>Потому что SqlCommandBuilder.DeriveParameters не знает про выходные параметры. Только про входно-выходные. Вот эта строка этот момент и исправляет.

У меня FbCommandBuilder.DeriveParameters (Firebird NetProvider2) направление параметров выдаёт правильно ID — output, STR10 — input
CREATE PROCEDURE INSERTDATA (STR10 varchar(10))
returns (ID integer)
as
begin
  ID = GEN_ID(GEN_DATA_ID,1);
  insert into DATA(ID, STR10) values(:ID, :STR10);
  suspend;
end
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.