Mam procedura składowana, która użyła polecenia EXECUTE IMMEDIATE
do wykonania bardzo długiego łańcucha. Jak mogę obsłużyć bardzo długi ciąg i zwrócić dane do refcursora?Oracle WYKONAJ NATYCHMIAST do kursora
7
A
Odpowiedz
0
Użyj 11gR2 i DBMS_SQL.to_refcursor.
12
Zakładając, że SQL jest nie dłuższy niż 32K (jak @Tony Andrews zasugerował), powinieneś móc używać coś takiego:
declare
SQL_Text varchar2(32760) := 'select * from dual'; --your query goes here
cur sys_refcursor;
begin
open cur for SQL_Text;
end;
Podczas pracy z Ref kursorów open-for
można stosować bezpośrednio zamiast execute immediate
.
Powiązane problemy
- 1. Natychmiast wykonaj zadanie Jenkinsa
- 2. Wykonaj wyrażenie lambda natychmiast po jego definicji?
- 3. Oracle: Wybierz natychmiast po wstawieniu do transakcji szeregowalnej
- 4. Używanie kursora Ref w Oracle SQL Developer
- 5. Oracle - wybierz konkretną kolumnę z kursora ref.
- 6. Python-Oracle przechodzący w parametr kursora na zewnątrz
- 7. Wykonaj synchronizację zadania sidekiq
- 8. zmiana kursora do wskaźnika palca
- 9. Ręczne dodawanie wierszy do kursora
- 10. Wstawianie zbiorcze do bazy danych Oracle: Co jest lepsze: Pętla kursora lub prosta Wybierz?
- 11. Dlaczego uruchomienie tej kwerendy za pomocą polecenia WYKONAJ NATYCHMIAST powoduje błąd?
- 12. Python 2.7: Zapis do pliku natychmiast
- 13. SQLite do Oracle
- 14. oracle varchar do numeru
- 15. Kursor pętli w Oracle
- 16. Zapewnianie zamykania plików natychmiast
- 17. Foreman natychmiast kończy działanie
- 18. pthread_cond_timedwait wraca natychmiast
- 19. Promise.onSuccess natychmiast zadzwonił
- 20. Menedżer alarmów natychmiast uruchomiony
- 21. IE: przeskok kursora do początku na wejściu
- 22. Jak uzyskać dane z kursora do ContextMenu
- 23. pozycja kursora w stosunku do aplikacji
- 24. vi usuwanie od początku do kursora
- 25. Czy sygnał ZABISKU natychmiast opuszcza proces?
- 26. Pisanie wewnątrz kursora android
- 27. Wstawianie daty systemowej do oracle
- 28. oracle do mysql lewej dołącza
- 29. ropucha do rozwijania autouzupełniania oracle
- 30. Łącze do bazy danych Oracle
Jak długo jest "bardzo długo"? Więcej niż 32K? –
Jaką wersję bazy danych? – DCookie