读书人

怎么转义amp

发布时间: 2012-03-17 19:06:28 作者: rapoo

如何转义&
SELECT * FROM A where A.col1 = 'F&ORG '

用shell调sqlplus,要查的是col1值为 'F&ORG ',但是总是提示输入变量&org


[解决办法]
SQL> insert into test000 values( 'scott '||chr(38)|| 'tiger ');

1 row inserted

SQL> commit;

Commit complete

SQL> select * from test000;

username
----------------------------------------
scott&tiger
[解决办法]
SELECT * FROM A where A.col1 = 'F ' || chr(38) || 'ORG '
[解决办法]
where A.col1 = 'F '|| '& '|| 'ORG '

这样行不
[解决办法]
CREATE TABLE t_01(col1 VARCHAR2(20))
INSERT INTO t_01 VALUES ( 'F '|| '& '|| 'ORG ')
SELECT * FROM t_01
SELECT * FROM t_01 WHERE col1= 'F '|| '& '|| 'ORG '

我这里这样倒是可以的
[解决办法]
zt

回复: 请教:SQL语句中转义符是那个?


我知道了,在sql*plus中使用转义符 '\ ',要首先修改环境变量
set escape on
随后就可以使用转义符 '\ '了,例如
SQL> set escape on
SQL> select count(*) from employees where name= '\[$1 ']
COUNT(*)
----------
0
SQL> select count(*) from employees where name= '&1 ';

输入 1 的值: a

原值 1: select count(*) from employees where name= '&1 '
新值 1: select count(*) from employees where name= 'a '

COUNT(*)
---------
0

读书人网 >oracle

热点推荐