Как убрать завершающие пробелы и лишнюю новую строку во время буферизации вывода? - PullRequest
2 голосов
/ 14 июня 2011

Конечные пробелы в буферном выходном rpad ('', 40) усекаются.Если я уберу опцию SET TRIMSPOOL, размер строки станет равным 400, и после каждого запроса на выборку будет добавлена ​​новая строка.Какие опции мне нужны, чтобы в конце были пробелы и убиралась лишняя новая строка.

SET SERVEROUTPUT ON
SET VERIFY OFF
SET FEEDBACK OFF
SET HEADING OFF
SET LINESIZE 400
SET TRIMSPOOL ON
SET PAGESIZE 0
SPOOL ${T_SPOOL}    

SELECT '0' || rpad(' ',17) || '01' || 'WBC' || rpad(' ',7) || rpad('Accounts ',26) ||     '407081' || rpad('REF',12)  || to_char(sysdate, 'DDMMYY') || rpad(' ',40)
from dual;

1 Ответ

1 голос
/ 14 июня 2011

Поскольку все ваши строки имеют одинаковую фиксированную длину, вы можете удалить настройку TRIMSPOOL и изменить настройку LINESIZE в соответствии с требуемой длиной, например

SET LINESIZE 120

(120 - это цифра, которую я придумал с помощью быстрого умственного анализа, это может быть неправильно).

...