Я пишу приложение Windows Forms C#, которое вызывает хранимые процедуры Oracle.Как настроить типы набора данных на языке C# при вызове OracleDataAdapter.Update() для хранимых процедур Oracle?
Я решил использовать типизированные наборы данных в приложении, они правильно заполняют различные даталяры, но возникают проблемы при вызове UpdateCommand или InsertCommand. Я вручную закодированы эти команды, потому что а) я использую Oracle хранимых процедур и б) я не доверяю CommandBuilder;)
Я использую VS2008 и Oracle 9i
У меня нет проблем выполнения хранимых процедур в SQL Server или Oracle, когда вы просто вызываете их из команды .ExecuteNonQuery; также у меня нет проблем с непосредственным выполнением операторов SQL и обновлением базы данных. Проблемы возникают только при выполнении измененных строк с помощью OracleDataAdapter.Update(). Я задаю правильный набор строк (добавлен, изменен и т. Д.)
Основная ошибка, которую я получаю (после множества экспериментов со все более упрощенными SP, заканчивающимися только одним параметром int), является «PLS-00306: неправильный номер или тип аргументов при вызове 'PROCNAME' '
Я попытался префикс параметра Oracle как с:, так и без.
Достаточно сказать, что я теряю желание жить. У кого-нибудь есть идеи, которые я мог бы попробовать дальше?
Благодаря
Ну, на самом деле, я видел больше проблем с использованием драйвера MS. Еще одна вещь, которую нужно попробовать - использовать случай с голой кости, используя текстовый аргумент вместо целого. – DCookie 2008-10-26 21:25:55