메뉴 건너뛰기

Dev tips

DataBase [oracle] isqlplus 에서 특수문자(&) 입력하는 방법

taknim 2012.08.10 19:33 조회 수 : 16073 추천:2473

http://www.cusmaker.com/108isqlplus 에서 쿼리를 입력할때 특수문자(&) 가 들어있으면 substitution variable로 인식하여 정상적인 값이 들어가지 않는다.
(ex. 쿼리스트링이 포함된 URL 을 인서트할때)

[ Enter value for mtype: ... <- 이런 메시지가 출력됨. ]

이를 해결하려면...

1. substitution variable 기능을 OFF시킨다. (둘중 하나 실행)
1) SQL > SET DEFINE OFF;
2) SQL > SET SCAN OFF;

2. substitution variable 기능을 사용해야 할 경우 &대신 다른문자로 지정한다.
SQL > SET DEFINE @        -- '&' 대신  '@'로 지정

3. 특수문자를 문자로 인식하도록 지정하는 방법
1) escape 문자를 인식하는 기능이 켜져있는지 확인한다. (default : OFF)
SQL > SHOW ESCAPE;
2) ON으로 변경하여 셋팅한다.
SQL > SET ESCAPE ON;
3) Query 에서 특수문자 앞에 '\'를 붙여 사용한다.
SQL >  INSERT INTO "TABLE_NAME" ("COLUNM_NAME") VALUES ('test\&value');