Вывод результата динамического SQL
DizzyIyzziD
Дата: 23.09.2015 17:31:57
Добрый день!
PL\SQL Developer
Есть скрипт, в котором в строку собирается SELECT, который в итоге выполняется.
Подскажите, как именно в PL\SQL Developer увидеть результат этого селекта аналогично простому SELECT, или может быть можно вывести в файл.
Спасибо.
Vint
Дата: 23.09.2015 17:39:19
DizzyIyzziD,
в тестовом окне PL\SQL Developer`а сделай переменную типа REF CURSOR в которую и выкинь результат.
DizzyIyzziD
Дата: 23.09.2015 18:00:24
Vint,
я неправильно написал изначально. мне нужно, что бы потом получившийся селект можно было положить в Excel
Vint
Дата: 23.09.2015 18:01:41
DizzyIyzziD,
научись работать с REF CURSOR или динамическим и ложи куда угодно.... никто ж не против.
DizzyIyzziD
Дата: 24.09.2015 10:17:27
Vint,
Переменную я сделал. Подскажите, как в нее выкинуть результат?
DECLARE
TYPE RefCUR IS REF CURSOR;
Result_ RefCUR
BEGIN
OPEN Result_ FOR (EXECUTE IMMEDIATE 'SELECT * FROM Tab1')
;
END;
В данном случае получаю ошибку: PLS-00103:Encountered the symbol "IMMEDIATE"...
DizzyIyzziD
Дата: 24.09.2015 10:19:40
Прошлый вопрос снимаю, разобрался
DizzyIyzziD
Дата: 24.09.2015 10:28:15
Теперь не могу понять, как мне этот набор вывести на экран
JDS
Дата: 24.09.2015 10:38:01
DizzyIyzziD |
---|
Теперь не могу понять, как мне этот набор вывести на экран |
1.
CREATE PROCEDURE tst (out_cur OUT SYS_REFCURSOR)
IS
BEGIN
OPEN out_cur FOR 'select * from dual';
END;
2. Находишь эту процедуру в дереве объектов по правой кнопке жмешь Test
3. В открывшемся окне просто жмешь F8
4. В списке переменных окна напротив out_cur находишь кнопочку, нажав которую, увидишь свой курсор
JDS
Дата: 24.09.2015 10:39:37
Ну или просто New -> Test window, в котором пишешь что тебе надо с бинд переменными, соотв.-нно если нужно видеть курсор, значит делаешь его переменной привязки и т.д.
DizzyIyzziD
Дата: 24.09.2015 12:00:45
JDS,
Большое спасибо!
по первому пути все вышло.
Прошу помочь, как же в обычном коде (без процедуры) объявить курсор как переменную привязки. нигде не могу найти нормального объяснения на тему бинд-переменных(((
ну и коль такая пьянка - порекомендуйте литературу по PL\SQL. Желательно с имеющимся переводом на русский