|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
Приветствую, ребята! На простом примере пытаюсь загрузить данные из таблички в коллекцию, потом сделать с неё select, но ругается на тип: PLS-00642 local collection types not allowed in sql statement. Вот что, делаю: 1) Создаю табличку Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
2) Затем пытаюсь выполнить такой скрипт: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Подскажите, что не так делаю? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 19:10 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
zorlo PLS-00642 local collection types not allowed in sql statement. ... Подскажите, что не так делаю? Нельзя использоваться PL/SQL тип, тип нужно объявлять на уровне базы CREATE TYPE. AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 20:13 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev zorlo PLS-00642 local collection types not allowed in sql statement. ... Подскажите, что не так делаю? Нельзя использоваться PL/SQL тип, тип нужно объявлять на уровне базы CREATE TYPE. AFAIK А если на уровне пакета? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 20:44 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
mnbvcx Leonid Kudryavtsev пропущено... Нельзя использоваться PL/SQL тип, тип нужно объявлять на уровне базы CREATE TYPE. AFAIK А если на уровне пакета? Тип, объявленный в спецификации пакета, можно использовать в SQL-запросах SELECT, в запросах DML - нельзя (возможно, в каких-то новых версиях это изменилось, не знаю). Объявленный в теле пакета - нельзя ни в каких в SQL-запросах. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 22:19 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
ASNexus, ну я это и имел в виду, что не обязательно на уровне схемы тип объявлять. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 22:41 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
zorlo Код: plsql 1.
Подскажите, что не так делаю? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 23:43 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
oragraf zorlo Код: plsql 1.
Подскажите, что не так делаю? Да, это понятно. Я этот пример просто написал, чтобы разобраться почему не работает обращение коллекции через table(). Идея была в том, чтобы использовать в коллекцию в имеющем запросе в джойне (вместо истенной таблицы), который собирается динамически, записывается в переменную, а потом выполняется. Но суть в том, что, хотелось бы, чтобы выполнился подобный кусок в процедуре. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 10:12 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
zorlo, Дополню, чего хотел бы пока, чтобы отрабатывало без ошибок. Создаём ещё табличку Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
И вот, что хотел бы, чтобы заработало: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 10:22 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
zorlo, Тип можно объявить только на уровне схемы? На уровне пакета нельзя? Как правильно это сделать? Вот так не срабатывает CREATE OR REPLACE TYPE test_values_set IS TABLE OF test%ROWTYPE; ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 10:29 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
zorlo, не тупи Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 12:44 |
|
Не получается выбрать значеия из коллекции через from table(...)
|
|||
---|---|---|---|
#18+
oragraf, Да это понятно, как вывести элементы. Но мне нужно обращение к коллекции через select ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 13:32 |
|
|
start [/forum/topic.php?fid=52&tid=1879470]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
25ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 242ms |
total: | 350ms |
0 / 0 |