본문 바로가기

IT/오라클

[Oracle] sqldeveloper로 특수문자 입력

sqldeveloper로 데이터를 입력할때 

특수문자 특히 &기호를 substitution variable로 인식하여 

정상적인 값이 들어가지 않은 적이 있다.

이는 select나 다른 쿼리들도 마찬가지로


예를 들어

SQL > INSERT INTO "TABLE_NAME" ("COLUNM_NAME") VALUES ('test&value');

이를 커밋하면


다음과 같은 창이 뜨는데


이를 해결하기위한 방법은 다음과 같다.


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');]



참조:http://cusmaker.tistory.com/108

'IT > 오라클' 카테고리의 다른 글

ORACLE NVL & DECODE 함수  (0) 2015.11.23
ORACLE INSTR() 함수  (0) 2015.11.23
오라클 함수 정리  (0) 2015.03.09
오라클 트리구조 검색 select start with  (0) 2014.12.18
plan table 생성 스크립트  (0) 2014.12.11