替代变量说明
在Oracle命令行中默认&
为替代变量,只要在执行的sql中出现&
符号,那么&
符号后面的sql则会失效;
这就意味着,包含&
符号的sql将不会正确的执行
比如:
insert into XXX_DB.XXX_TABLE (COLUMN1,COLUMN2) value ('AB&CD','EF&GH');
在不关闭替代变量的情况下,数据库中的数据将不会是预想中的'AB&CD','EF&GH'
,而是如下效果:
当然也可能是其它效果,这个不必纠结。
COLUMN1 | COLUMN2 |
---|---|
AB commit; | EF exit; |
关闭替代变量
set define off
关闭替代变量后,则会正常执行sql
比如:
insert into XXX_DB.XXX_TABLE (COLUMN1,COLUMN2) value ('AB&CD','EF&GH');
效果如下:
COLUMN1 | COLUMN2 |
---|---|
AB&CD | EF&GH |
开启替代变量
set define on
设置替代变量
set define *
将默认的替代变量标志符&
设置为*
,当然也可以设为其它字符
设置完后,*
将作为新的替代变量