|
|
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Можно ли использовать переменную sys_refcursor в составлении запроса т.е. вместо Код: plsql 1. 2. 3. 4. 5. у нас есть уже открытый курсор, который и нужно поместить в конструкцию запроса Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2018, 22:25 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Retvit, курсор может быть параметром функции, используемой в sql-запросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2018, 22:59 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Retvit, Результирующий набор данных открытого курсора уже предопределен, он не зависит от второго курсора, смысл такой конструкции непонятен. Возможность создать вложенный курсор есть CURSOR Expressions ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2018, 23:13 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Retvit, да, и это же легко проверить в вашем же коде парой строчек: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 01:40 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
xtender, я так понял Retvit хочет Код: plsql 1. 2. 3. 4. 5. 6. ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 08:45 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Staxя так понял Retvit хочетДаже, если и так. И что?? Retvitпоместить в конструкцию запросаВ чем смысл курсора из дуала, возвращающего курсор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 09:07 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Я не смог вчера сразу понять ошибку, думал это именно наличие sys_refcursor в курсоре все портит. Мне нужно получить данные (в примере таблицы) + на каждую строку курсор (в примере v$version), который будет потом конвертироваться в XML. Если возвращаемая строка одна, то ок, если несколько - ошибка, из-за того, что курсор v_c уже прочитан. Код: 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. Так что хотелось бы понять, можно как-то с переменной sys_refcursor получить поведение с cursor(), переоткрыть ее что ли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 19:55 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
RetvitМне нужно получить данные (в примере таблицы) + на каждую строку курсор (в примере v$version)Какой смысл в каждой строке возвращать один и тот же курсор? Retvitкоторый будет потом конвертироваться в XML.Зачем сейчас извращаться с вложенным курсором, если он потом не нужен как курсор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 20:34 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Retvit, Похоже ты курсоры перепутал: Код: 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. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 20:49 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Вернее: Код: 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. 40. 41. 42. 43. 44. 45. 46. 47. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 21:16 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
-2-RetvitМне нужно получить данные (в примере таблицы) + на каждую строку курсор (в примере v$version)Какой смысл в каждой строке возвращать один и тот же курсор? Пример придумать нетрудно =) Составляется список таблиц для обзвона, в поле идут 3 вопроса к ним из заготовленного списка. А одинаковые, потому что система сначала готовит списки вопросов и потом формирует к ним батчи с таблицами. -2-Retvitкоторый будет потом конвертироваться в XML.Зачем сейчас извращаться с вложенным курсором, если он потом не нужен как курсор? На вход будет приходить sys_refcursor ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 21:35 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
SY, Ты не понял суть вопроса =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 21:36 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
RetvitТак что хотелось бы понять, можно как-то с переменной sys_refcursor получить поведение с cursor(), переоткрыть ее что ли. Можно open -> xml -> close внутри цикла, но не нужно, первый курсор будет возвращать все время один и тот же результат, зачем выполнять один и тот же запрос много раз, если ты сразу можешь сформировать xml-объект и далее использовать его. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 22:20 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
RetvitПример придумать нетрудно =) Составляется список таблиц для обзвона, в поле идут 3 вопроса к ним из заготовленного списка. Ну и зачем тут PL/SQL? Код: 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. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2018, 23:35 |
|
||
|
sys_refcursor в составлении запроса
|
|||
|---|---|---|---|
|
#18+
Retvit, Да можно и так, лиж бы ручки не болели Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2018, 13:55 |
|
||
|
|

start [/forum/topic.php?fid=52&tid=1883344]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 395ms |

| 0 / 0 |
