SQL*Plus에서 '&'가 포함된 문자열을 변수로 인식하지 않게 하기
문자열 자체에 &
가 포함되어 있는 경우 SQL*Plus에서 &
뒤의 단어를 변수로 인식해 그에 대한 값의 입력을 요구한다.
SQL> update tbl set a = 'hello&world' where ... Enter value for world: _ < -- 입력을 기다림
이걸 어떻게 회피할 수 있을까?
해결 방법 1
다음 명령을 실행시킨 후 SQL 실행한다.
SQL> set define off
(SQL*Plus User's Guide and Reference에서 SET DEFINE OFF
절 참조)
해결 방법 2
편법으로 다음과 같은 식으로 문자열 변경할 수도 있다.
'hello&world' --> 'hello&'||'world'
문자열에 &
가 많을 경우 노가다 작업이 된다.