
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
25.11.2005, 14:35
|
|||
|---|---|---|---|
|
|||
Вызов хранимой процедуры |
|||
|
#18+
Проблема такая: есть процедура в пакете (БД Оракл) и у неё выходные параметры - Table of Objects, Object, boolean,... Надо считать как-то результат выполнения цедулины и переменные JAVA, только вот в какие? процедура такая: PROCEDURE get_form_info (v_id in NUMBER, v_project_id IN NUMBER, v_user_id IN NUMBER, v_show_filter OUT BOOLEAN, v_filter_list OUT filter_list_type, v_def_filter_id OUT NUMBER, v_def_filter_name OUT VARCHAR2, v_fsaves_list OUT filter_save_list_type, v_ch_form_list OUT ch_form_list_type); Код: plaintext 1. 2. 3. 4. 5. 6. 7. Так????? P.S. Только вот jvm ругается на Types.BOOLEAN, хотя при компиляции - всё нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2005, 15:07
|
|||
|---|---|---|---|
|
|||
Вызов хранимой процедуры |
|||
|
#18+
ИМХО не получается у Oracle JDBC работать с boolean, м.б. потому, что в Oracle тип boolean есть только в PL/SQL, но не в SQL. Единственно, согласно комментарию можно определить у процедуры NUMBER вместо BOOLEAN, а через getBoolean() получать значение, которое будет интерпретироваться как 0->FALSE, не-0->TRUE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2005, 15:31
|
|||
|---|---|---|---|
|
|||
Вызов хранимой процедуры |
|||
|
#18+
За boolean спасибо, помогло. Только вот не могу вызвать процедуру, так как типы out параметров не совпадают(почему-то?), может out-параметр типа Table Of Objects объявлять не как Types.Array,а как-нить по-другому Types.Struct или мож Types.Other???????????? И если я даже выполню процедуру, то в (JAVA-)переменные каких типов я смогу считать out-параметры???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2005, 15:59
|
|||
|---|---|---|---|
Вызов хранимой процедуры |
|||
|
#18+
тынц (передача-прием массивов) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2005, 16:11
|
|||
|---|---|---|---|
|
|||
Вызов хранимой процедуры |
|||
|
#18+
Как определяется filter_list_type ? В документации на Oracle JDBC 9i сказано, что доступ к pl/sql-таблицам является расширением OCI-драйвера: Oracle9i JDBC Developer's Guide and Reference Release 2 (9.2) OCI Extensions Accessing PL/SQL Index-by Tables http://download-west.oracle.com/docs/cd/B10501_01/java.920/a96654/oci_func.htm#1017512 Но на JDBC от Oracle 10.2 у меня такое прокадывает и с THIN-драйвером, да и в документации этого ограничения я уже не нашел. Погляди пример в 9-й доке, или я могу показать, в классе OracleCallableStatement есть методы типа registerIndexTableOutParameter(). Но такое работает с одномерными массивами. Если же ты хочешь передавать двумерный массив, т.е. массив записей, то можно это сделать через объектные таблицы: http://www.sql.ru/faq/faq_topic.aspx?fid=407 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&tablet=1&tid=2150857]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 251ms |
| total: | 394ms |

| 0 / 0 |
