오라클 아스키로 특수문자 업데이트

2006. 10. 16. 10:56Oracle/Oracle Study

반응형
출처 pride FC | 효도르
원문 http://blog.naver.com/sungs6031/40026502455

UPDATE t SET A = REPLACE(A, CHR(9),'')
 WHERE A LIKE '%'||CHR(9)||'%';

 

CHR(44)     ,                   '||CHR(44)||'
CHR(39)     '
CHR(38)     &
CHR(9)      탭문자
CHR(13)     라인피드
CHR(10)     캐리지리턴

 

UNIX : CR
WIN : LF + CR

 

Ex) 웹브라우저에서 textarea에서 입력하였을때  '엔터' 찾기

      select * from table_name where 특정칼럼 like '%'||chr(13)||chr(10)||'%' ;
(출처 : 'sql 조회시 엔터키를 포함하고 있는 문자열을 어떻게 찾나요?' - 네이버 지식iN)

 

 

=====================================================================================

 

제 의견을 덧붙인다면...

 

레코드 값에 간혹 넣지도 않은 이상한 특수기호가 들어 있는 경우가 있을 것입니다.(ex. ♪)

저 8분음표 기호는 라인피드라고 하네요. 일일히 select 문을 쳐보면서 나온겁니다.

라인피드가 아직 정확하게 뭔지는 모르겠지만 어쨌든 찾았습니다.ㅎㅎㅎ

8분음표를 지우고 싶다면 update를 해주세요..

 

ex) update table_name set column_name = TRIM(chr(13) from column_name)

      where [조건문]

 

cf. TRIM은 없애주는 기능이라는 거 다 아시져!^^;; 하나의 문자만을 없애준다는게 단점!

     2개를 지우고 싶다면 update를 한 후 다시 한번 더 해주셔야 합니다.

반응형

'Oracle > Oracle Study' 카테고리의 다른 글

Row Migration  (0) 2008.11.30
10g Archive Mode로 변경  (0) 2008.10.01
Rollup & Cube & Grouping 차이  (0) 2008.05.16
with grant option & with admin option 차이  (0) 2008.05.14
view에 사용되는 with check option  (0) 2006.10.20