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

Откуда: Оттуда
Сообщений: 267
Всем привет!

Есть такая проблемка.
Запускаю запрос к серверу, который вызывает процедуру Oracle с рефкурсором. В результате должен возвратиться набор записей. В процедуре 6 входных параметров (все строковые), 1 выходной (refcursor). Если суммарная длина всех 6 параметров <=950 символов, то все работает нормально. Если больше, Access 2003 вылетает.

Запрос такой:

{call contracts.QFL_PACK.get_qfl_w_kon2(' (DATAPRZD IS NOT NULL AND DATAPREK IS NULL) and (W1.load_type = 401 or W1.ZDNAKLID not in (2301521)) and (KMFirst.KudaID IN (-999, 68812)) and (W_KON.transpid is null) and (W_KON.DocInstructID IS NULL ) and contract' ,'.kontr1id in (859151,858565,853033,853036,853037,851869,851727,852879,858570,851151,851153,850411,850776,853181,859152,859093,858858,859130,859135,858895,876593,876651,876694,876832,879839,850768,858750,850548,850246,850' ,'521,850240,850255,850532,850533,850980,858713,850899,851960,858507,858730,858182,853428,853429,853309,855460,858348,858349,858350,850885,853250,850820,877679,851962,881337,881721,881950,881942,881146,882131,879840,881339' ,',878855,881091,881777,881773,881369,882057,877525,878803,878806,878076,878048,877528,877529,877530,880351,878047,882789,882129,881258,882792,882060,881336,882130,880760,882794,882213,880754,882787,882183,880727,882932,88' ,'2906,882902,882133,880861,882520,882249,883089,880975,881043,880978,880863,882940,882941,881040,882211) ' ,'' ,?)}
На сервере эта процедура такая:

procedure get_qfl_w_kon2 (
in_sql1 in VARCHAR2,
in_sql2 in VARCHAR2,
in_sql3 in VARCHAR2,
in_sql4 in VARCHAR2,
in_sql5 in VARCHAR2,
in_sql6 in VARCHAR2,
c OUT c_ref
) IS
BEGIN

OPEN c FOR SELECT length(in_sql1||in_sql2||in_sql3||in_sql4||in_sql5||in_sql6) from dual;

END;
c_ref это sys_refcursor

На 2010 Accessе работает, на 2003 вылетает, не знаете почему?
21 мар 11, 15:58    [10403537]     Ответить | Цитировать Сообщить модератору
 Re: Передача параметров в процедуру  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 51780

lord_de_tempest
На 2010 Accessе работает, на 2003 вылетает, не знаете почему?

Потому что в Access 2003 баг?..

Posted via ActualForum NNTP Server 1.4

21 мар 11, 16:00    [10403561]     Ответить | Цитировать Сообщить модератору
 Re: Передача параметров в процедуру  [new]
lord_de_tempest
Member

Откуда: Оттуда
Сообщений: 267
Dimitry Sibiryakov,

вот хотелось бы знать баг или нет. Может там есть какой-нибудь буфер для передачи параметров и может у acc2003 он по умолчанию меньше, чем у acc2010. И может быть можно как-то его длину поменять...
21 мар 11, 16:11    [10403669]     Ответить | Цитировать Сообщить модератору
 Re: Передача параметров в процедуру  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 51780

lord_de_tempest
вот хотелось бы знать баг или нет.

Баг, баг, не сомневайся. Вылет это всегда баг.

Posted via ActualForum NNTP Server 1.4

21 мар 11, 16:13    [10403699]     Ответить | Цитировать Сообщить модератору
 Re: Передача параметров в процедуру  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6727
lord_de_tempest,

так может тогда в аксесовском форуме спросить?
21 мар 11, 16:14    [10403714]     Ответить | Цитировать Сообщить модератору
 Re: Передача параметров в процедуру  [new]
lord_de_tempest
Member

Откуда: Оттуда
Сообщений: 267
env
lord_de_tempest,

так может тогда в аксесовском форуме спросить?


Спрашивал, молчание уже несколько дней:)
21 мар 11, 16:15    [10403728]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить