Re[4]: Параметр AsArray для передачи в хранимую процедуру OD
От: Stea1z Россия  
Дата: 05.08.04 11:04
Оценка:
Здравствуйте, Eugenie, Вы писали:

S>>>И вообще, попробуй почитать книжки по С...


ssm>>да ему в Oracle массив как параметр передать надо. книжки по С тут не помогут


E>Тех книжек еще не написано (или уже да? плиз, ткните носом).

E>Конкретизирую вопрос.
E>Исходный код:


E>
E> 1  DM1->SP_IN->StoredProcName="sACC.AdmClient";
E> 2  DM1->SP_IN->Prepare();
E> 3  DM1->SP_IN->ParamByName("PACTION")->AsString="I";
E> 4  DM1->SP_IN->ParamByName("pV")->AsArray->OCISvcCtx=DM1->Database1->OCISvcCtx;
E> 5  DM1->SP_IN->ParamByName("pV")->AsArray->AllocObject(DM1->Database1->OCISvcCtx,"CFBTYPE_CLAR");
E> 6  DM1->SP_IN->ParamByName("pV")->AsArray->ItemAsString[0] = lv->Strings[0];
E>


E>валится на строке номер 5 в приведенном выше варианте с сообщением OCI function is not linked.


E>Если строку 5 переделать как


E>
E> 5  DM1->SP_IN->ParamByName("pV")->AsArray->AllocObject(CFBTYPE_CLAR");
E>


E>то вываливается access violation.


E>Кстати, если кто сможет объяснить, когда какую функцию надо вызывать, было бы хорошо!


E>Regards,

E>Eugenie


да, действительно... я-то подумал, что проблема в другом. И к тому же я допустил ошибку — массивы в С передаются просто как указатель на 1-ый элемент. function(array);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.