|
|
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Пришлось временно переключится с Сайбеза на Оракл. Обнаружил интересный механизм с передачей массива в процедуру - круто, здорово. Но можно ли передать не массив, а именно таблицу, дабы потом пользовать ее напрямую в запросах внутри процедуры? чего есть сейчас: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Подскажите, как правильно определить таблицу для такого кейса. если это принципиально возможно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 15:32 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Ссылки на доки максимально приветствуются :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 15:32 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Weak Ref Cursor ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 15:34 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous, штука хорошая, но насколько понимаю для поставленной задачи не совсем подходит, т.к. подразумевает так же последовательную обработку каждой записи курсора. Мне же нужна bulk-обработка поступившего на вход в процедуру датасета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 15:48 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Т.е. условно поступивший датасет на вход процедуры, далее планируется "сджойнить" с некоторой "базовой" таблицей и вывести расхождения. Можно, конечно же, условие обернуть в цикл и для каждой записи в отдельности производить анализ "базовой" таблицы. Но было бы удобнее (для меня, по крайней мере) сделать тривиальный джойн двух таблиц и вывести расхождения одним запросом, вместо цикла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 15:50 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Mikle83, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 16:01 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
env, спасибо! Круто! З.Ы.: Загодочны и неисповедимы пути оракловые... Проеразвлекался с сервером с полчаса, выхватывая ексепшен авторcannot access rows from a non-nested table item пока не нашел, что декларирование табличного типа должно быть обязательно на уровне схемы, но никак не внутри package... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 17:57 |
|
||
|
Таблицу (не массив) в процедуру. Как правильно?
|
|||
|---|---|---|---|
|
#18+
Mikle83пока не нашел, что декларирование табличного типа должно быть обязательно на уровне схемы, но никак не внутри package...SQL o PL/SQL-знает лишь то, что в *_procedures. Исключение - pipelined, и то лишь как синтаксический сахар. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 09:07 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39354675&tid=1886941]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
139ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 489ms |

| 0 / 0 |
