|
|
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Есть вот такой пакет (это схематичный пример, просто для понимания): Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. к этому пакету я обращаюсь из другого, подменяя SYSTEM.this_variable каждый раз, перед вызовом TEST_put, из этого пакета: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. однако, значение test_var для обеих итераций цикла будет равным первому, т.е., оно закешировалось. Вопрос в том, как сбросить/переинициализировать значение переменной пакета? Вариант переопределения/расширения пакета пока не рассматриваю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 13:56 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
wolfioВопрос в том, как сбросить/переинициализировать значение переменной пакета? Вариант переопределения/расширения пакета пока не рассматриваю DBMS_SESSION.RESET_PACKAGE в Вашем случае - Самое Оно... Еще можно спецификацию перекомпилировать перед вызовом или объект, от которого данный спек зависит... Ах да! Главный Cпособ: Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 14:03 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
mRdUKE, как это мне поможет? andrey_anonymous, вот прям обожаю sql.ru за таких как вы а по делу есть что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 14:10 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
По делу есть смысл почитать доку , прежде чем использовать незнакомый инструмент Хотя можно и методом тыка, конечно, и обязательно прилюдно Но тогда и не стоит обижаться на стеб ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 14:16 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, да буков шибко много, так бы конешно прочел бы я то не за теорией зашел, а за вразумительным ответом о том, почему так сделать нельзя, или как это сделать можно. доку я в принципе читал, и почти уверен, что обновить значение не получится, но вдруг появились новые фишки, и какой-нибудь асс мимо этой темы проходя, решил бы помочь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 14:20 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
wolfioкак это сделать можно Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 14:26 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
глобальные переменные - зло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 15:00 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
andreymx, не могу с вами не согласиться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 15:09 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
wolfioоднако, значение test_var для обеих итераций цикла будет равным первому, т.е., оно закешировалось. я не называю ето кешированием, скорее инициализация при первом вызове пакета имхо никак (сбросить одну), кроме как менять TEST_put если переменная не описана в спецификаци доступ к ней из вне невозможен ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 16:37 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 17:31 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
wolfioВопрос в том, как сбросить/переинициализировать значение переменной пакета? То что ты хочешь называется контекстной переменной. Кури CREATE CONTEXT . SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 18:06 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
SYwolfioВопрос в том, как сбросить/переинициализировать значение переменной пакета? То что ты хочешь называется контекстной переменной. Кури CREATE CONTEXT . SY. авторВариант переопределения/расширения пакета пока не рассматриваю ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 18:12 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
wolfioя то не за теорией зашел, а за вразумительным ответом о том, почему так сделать нельзя, или как это сделать можно. Проходил мимо темы, хотел бы помочь, да не могу понять, что вы сделать хотите. То ли внутреннюю переменную в теле пакета использовать, то ли глобальную. Может какие-нибудь подробности у вас есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 18:19 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
кстати, ТС не говорил, что пакет его Может, ему в наследство впендюрили, а править нельзя, ибо покупное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 18:28 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
stax..авторВариант переопределения/расширения пакета пока не рассматриваю ..... stax Ну тогда в лоб: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 21:12 |
|
||
|
сброс переменной пакета
|
|||
|---|---|---|---|
|
#18+
SYНу тогда в лоб: Код: plsql 1. А надо было не в лоб, а в package body Ж) С учетом wolfioВариант переопределения/расширения пакета пока не рассматриваю сложно предложить что-то помимо 19929828 и 19931007 . Разве что через ORADEBUG кто-нибудь что-нибудь предложит... дальше только прямая запись в память процесса - для особо тонких извращенцев :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 21:38 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39353639&tid=1886953]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
144ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 447ms |

| 0 / 0 |
