|
[ORACLE]SQL*Plus에서 특수문자 INSERT하기 (&) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
하고 있다. 그 Default 문자를 & 로 사용하고 있으며 이 &가 사용되면 SQL*Plus는 사용자에게 해당하는 값을 입력하도록 기다리고 있게 된다.
예를 들어 INSERT INTO TEMPTBL (COL1) VALUES ('YOU&I')를 실행 하게되면 SQL*Plus는 Enter value for i: 와 같은 메시지를 나타내며 값을 입력할때 까지 기다리게 된다.
그러나 실제는 'YOU&I'라는 값이 전체적으로 입력 되어져야 하는것과 같이 특수 문자를 INSERT, UPDATE해야 하는 경우가 발생하게 되고 UPDATE, DELETE등의 WHERE절에도 값에 &등 특수 문자가 있다면 오류 또는 원하지 않는 결과를 얻게 된다.
────────────────────────────────────────────── 이러한 문제를 해결하기 위하여 다음의 3가지 방법이 있을 수 있다.
1. Substitution Variable 기능을 중단시킨 후 INSERT, UPDATE, DELETE한다. SET DEFINE OFF 또는 SET SCAN OFF명령을 실행하여 Substitution Variable기능을 SQL> SELECT * FROM TEMPTBL;
SET DEFINE을 이용하여 Substitution Variable 문자를 다른 문자로 지정한다. SQL> SELECT * FROM TEMPTBL;
기본적으로 SQL*Plus는 \(Back Slash) 문자를 ESCAPE문자로 지정되어 있으며 SQL> set escape on SQL> SELECT * FROM TEMPTBL; |
'Database' 카테고리의 다른 글
| [Oracle] Timestamp의 Index Hint 특성 (4) | 2010.07.02 |
|---|---|
| [Oracle] Table join 시 index를 이용한 정렬방법 (0) | 2008.12.04 |
| [Oracle] Hint 사용 (1) | 2008.12.04 |
| [Oracle] Clob 검색방법 (0) | 2008.12.04 |
| [ORACLE]SQL*Plus에서 특수문자 INSERT하기 (0) | 2008.12.04 |
| Oracle MAX Row에 해당하는 다른 Column 값 얻기 (0) | 2008.11.06 |
댓글을 달아 주세요