Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 передать xml больше 32k  [new]
LeapForward
Member

Откуда:
Сообщений: 12
Здравствуйте
Возникла такая проблема, при передаче параметра типа clob в хранимую процедуру оказалось что больше 32k передать нельзя
Нашел в сети пример, который должен решать проблему, но он не работает:

OracleCommand cmd;
cmd.CommandType = System::Data::CommandType::StoredProcedure;
cmd.Connection = orcon;
OracleCommand ^tcmd = gcnew OracleCommand("DECLARE tmpLobXmit CLOB; BEGIN DBMS_LOB.CREATETEMPORARY(tmpLobXmit, False, 0); :tmpLob := tmpLobXmit; END;", orcon);
tcmd->Parameters->Add("tmpLob", OracleDbType::Clob)->Direction = ParameterDirection::Output;
tcmd->ExecuteNonQuery();
Oracle::DataAccess::Types::OracleClob ^tmpLob = (Oracle::DataAccess::Types::OracleClob^)tcmd->Parameters[0]->Value;
tmpLob->Write(xmldoc.InnerXml->ToCharArray(),0,xmldoc.InnerXml->Length);
cmd.CommandText = "AddDataToSmo";
cmd.Parameters->Add("tmpLob", OracleDbType::Clob)->Value = tmpLob;
cmd.ExecuteNonQuery();
26 июн 12, 07:32    [12774168]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить