[20190720]sqlplus 与输出& 2.txt

[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


请使用浏览器的分享功能分享到微信等