首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎么转义&

2012-03-17 
如何转义&SELECT*FROMAwhereA.col1F&ORG用shell调sqlplus,要查的是col1值为 F&ORG ,但是总是提示输入变量

如何转义&
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

热点排行