[20180430]ASICC 7f.txt
--//今天从网上copy一个脚本,执行老是报错,提示ORA-00911: invalid character.
--//检查才发现里面含有1个ASCII 7F,从文本根本看不出来,浪费了许多时间做一个记录.
1.环境:
SCOTT@test01p> @ ver1
PORT_STRING VERSION BANNER CON_ID
------------------------------ -------------- -------------------------------------------------------------------------------- ----------
IBMPC/WIN_NT64-9.1.0 12.1.0.1.0 Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production 0
d:\>cat d:\tmp\aaa.txt
select sysdate from dual ;
--//根本看不出来分号前字符的ascii码是7F.
d:\>D:\tools\Vim\vim80\xxd -c 32 d:\tmp\aaa.txt
00000000: 7365 6c65 6374 2073 7973 6461 7465 2066 726f 6d20 6475 616c 2020 207f 3b0d 0a select sysdate from dual .;..
~~
d:\>od -t x1 d:\tmp\aaa.txt
0000000 73 65 6c 65 63 74 20 73 79 73 64 61 74 65 20 66
0000020 72 6f 6d 20 64 75 61 6c 20 20 20 7f 3b 0d 0a
0000037
--//xxd与od检查可以发现.
--//我估计对方使用的编辑器存在一些问题,或者文件编码UTF8之类的,操作时删除半个字符导致的问题.
--//7F DEL (delete) 删除
SCOTT@test01p> @ d:\tmp\aaa.txt
select sysdate from dual
*
ERROR at line 1:
ORA-00911: invalid character
--//删除后一切ok.