반응형
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');
'Lecture > SqlDeveloper' 카테고리의 다른 글
기초 SQL(1) (0) | 2012.04.30 |
---|---|
SqlDeveloper 설치 (2) | 2012.04.25 |