@KTG

[SQLPLUS] Как получить количество возвращаемых строк?

У меня в SQLPLUS вызывается пакетная конвеерная функция, которая пишет результат (таблицу) в файл.
Мне нужно дополнительно считать количество возвращаемых строк, и если ничего не вернулось - то выходить из скрипта с кодом ошибки.

WHENEVER oserror exit 1;
WHENEVER sqlerror exit 2;
SET HEADING OFF
SET FEEDBACK OFF
SET PAGESIZE 0
SET ECHO OFF
SPOOL ./tmp/retTables.txt
SELECT * FROM TABLE(usr.util_pack.Get_List);
SPOOL OFF;
exit 0;

Не представляю как считать строки, и что бы они не попадали в результирующий файл.
  • Вопрос задан
  • 127 просмотров
Решения вопроса 1
@KTG Автор вопроса
сделал так:
DECLARE 
		row_count NUMBER;
	BEGIN
		SELECT COUNT(line) INTO row_count FROM TABLE(usr.util_pack.Get_List);	
		IF row_count < 1 THEN
     		RAISE_APPLICATION_ERROR(-20000, 'Empty query result: tables list');
     	END IF;
	END;
	/
SELECT * FROM TABLE(usr.util_pack.Get_List);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы