[20190720]sqlplus 与输出& 2.txt
--//以前写的链接:http://blog.itpub.net/267265/viewspace-2645469/=>[20190524]sqlplus 与输出&.txt
--//今天学习另外的方法使用set escape on,测试如下:
1.环境:
SCOTT@test01p> @ ver1
PORT_STRING VERSION BANNER CON_ID
------------------------------ -------------- -------------------------------------------------------------------------------- ----------
IBMPC/WIN_NT64-9.1.0 12.2.0.1.0 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 0
SCOTT@test01p> select '1&2' a from dual ;
Enter value for 2: aaa
old 1: select '1&2' a from dual
new 1: select '1aaa' a from dual
A
----
1aaa
SCOTT@test01p> select '1\&2' a from dual ;
Enter value for 2: bbbb
old 1: select '1\&2' a from dual
new 1: select '1\bbbb' a from dual
A
------
1\bbbb
--//可以发现&2发生了替换。
SCOTT@test01p> set escape on
SCOTT@test01p> select '1&2' a from dual ;
Enter value for 2: cccc
old 1: select '1&2' a from dual
new 1: select '1cccc' a from dual
A
-----
1cccc
SCOTT@test01p> select '1\&2' a from dual ;
A
---
1&2
--//可以发现在设置set escape on的情况下,加一个\这样&2就不会发生替换。可以定义特定字符代替\.
SCOTT@test01p> set escape off
SCOTT@test01p> set escape #
SCOTT@test01p> select '1#&2' a from dual ;
A
---
1&2