Oracle特殊符号&的处理,今天遇到一个问题,同事用动态sql生成的insert语句,其中含有&符号,在做insert时,这个&符号就被作为一个变量提示符了。如何解决这个问题?其实很简单:set define off
SQL>create tablet (avarchar2(20));
Table created.
SQL> insertinto tvalues('aaa&bbb');
Enter valuefor bbb: .
old1:insert intot values('aaa&bbb')
new1:insert intot values('aaa.')
1 rowcreated.
SQL> rollback;
Rollback complete.
SQL>
SQL>--wenow setdefine toOFF,theninsert data.
SQL> setdefine off
SQL> insertinto tvalues('aaa&bbb');
1 rowcreated.
SQL> select *from t;
A
--------------------
aaa&bbb
SQL>
我们发现set define off后,带&符号的数据已经插入。