select col1, col2
into name1, name2
from table1
where col1=col;
m_sub := 'Subject ';
m_msg := 'Hello '||name||' ,'||/n||/n||'Your order has been placed.';
Run Code Online (Sandbox Code Playgroud)
错误(34,33):PLS-00103:遇到以下其中一项时遇到符号"/":( - + case mod new null avg count current max min before sql stddev sum variance execute forall merge time timestamp interval date pipe
Rob*_*ove 113
Chr(Number)应该适合你.
select 'Hello' || chr(10) ||' world' from dual
Run Code Online (Sandbox Code Playgroud)
请记住,不同平台需要不同的新行字符:
根据Oracle PLSQL语言定义,字符文字可以包含“字符集中的任何可打印字符”。https://docs.oracle.com/cd/A97630_01/appdev.920/a96624/02_funds.htm#2876
@Robert Love 的答案展示了可读代码的最佳实践,但您也可以只在代码中键入换行符。以下是来自 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.
Run Code Online (Sandbox Code Playgroud)
除了 CHR( NN ) 函数,您还可以使用 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.
Run Code Online (Sandbox Code Playgroud)
为了公平的报道,我想值得注意的是,不同的操作系统使用不同的字符/字符序列进行行尾处理。您必须考虑查看或打印程序输出的上下文,以便确定您是否使用了正确的技术。
u'\000D\000A'u'\000A'u'\0085''<BR>''<br />'小智 6
begin
dbms_output.put_line( 'hello' ||chr(13) || chr(10) || 'world' );
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
173872 次 |
| 最近记录: |