|
|
|
Вызов хранимой процедуры с DML
|
|||
|---|---|---|---|
|
#18+
Коллеги, добрый день. Прошу помощи, ибо сам не Ораклоид. Есть процедура, допустим test. На вызов вида: Код: plsql 1. 2. 3. 4. ругается тем, что внутри test происходят операции DML и падает с ошибкой. Как можно получить подобный атрибутивный состав (attr1, attr2), чтобы это вызывалось из Java и можно было получить курсор / ResultSet? Oracle 12 Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2018, 14:14 |
|
||
|
Вызов хранимой процедуры с DML
|
|||
|---|---|---|---|
|
#18+
G.Collectorчтобы это вызывалось из Java и можно было получить курсор / ResultSet?Сделай наследника от ResultSet, который возвращает один next(), значение 1 для getXXX(1) и результат вызова test(1, 2, 3) для getXXX(2). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2018, 14:36 |
|
||
|
Вызов хранимой процедуры с DML
|
|||
|---|---|---|---|
|
#18+
G.CollectorНа вызов вида: Код: plsql 1. 2. 3. 4. ругается тем, что внутри test происходят операции DML и падает с ошибкой. В контексте select запрещены какие-либо изменения (см. pragma wnds, wnps). Но если очень хочется, то можно (хотя я бы не советовал) - для этого test(1,2,3) должна выполняться в автономной транзакции. Сразу обращаю внимание, что работающая в рамках автономной транзакции в контексте select функция должна быть очень тщательно спроектирована как на предмет межпроцессного взаимодействия (конкуренции с потенциально сотнями параллельных подобных select), так и реентерантности (функция в select-list может вызываться несколько чаще, чем можно себе представить без знания некоторых деталей, на основании одного только здравого смысла). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2018, 15:10 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39665390&tid=1883808]: |
0ms |
get settings: |
8ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
151ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 415ms |

| 0 / 0 |
