Согласно определению языка Oracle PLSQL, символьный литерал может содержать «любой печатный символ в наборе символов». https://docs.oracle.com/cd/A97630_01/appdev.920/a96624/02_funds.htm#2876
@ Ответ Роберта Лава показывает лучшую практику для читаемого кода, но вы также можете просто ввести символ перевода строки в коде. Вот пример с терминала Linux, использующего sqlplus
:
SQL> set serveroutput on
SQL> begin
2 dbms_output.put_line( 'hello' || chr(10) || 'world' );
3 end;
4 /
hello
world
PL/SQL procedure successfully completed.
SQL> begin
2 dbms_output.put_line( 'hello
3 world' );
4 end;
5 /
hello
world
PL/SQL procedure successfully completed.
Вместо функции CHR (NN) вы также можете использовать буквенные escape-последовательности Unicode, такие как u'\0085'
, которые я предпочитаю, потому что, вы знаете, мы больше не живем в 1970 году. Смотрите эквивалентный пример ниже:
SQL> begin
2 dbms_output.put_line( 'hello' || u'\000A' || 'world' );
3 end;
4 /
hello
world
PL/SQL procedure successfully completed.
Для справедливого охвата, я думаю, стоит отметить, что разные операционные системы используют разные символы / последовательности символов для обработки конца строки. Вам необходимо продумать контекст, в котором вывод вашей программы будет просматриваться или печататься, чтобы определить, используете ли вы правильную технику.
- Microsoft Windows: CR / LF или
u'\000D\000A'
- Unix (включая Apple MacOS): LF или
u'\000A'
- IBM OS390: NEL или
u'\0085'
- HTML:
'<BR>'
- XHTML:
'<br />'
- и т.д.. и т. д.