본문 바로가기

DB-Oracle

UTL_URL.ESCAPE 인코딩, UTL_URL.UNESCAPE 디코딩

728x90

/*
[SYS.UTL_URL 사용해 URL 인코딩 ESCAPE ,  디코딩 UNESCAPE 수행 실시]
1. SYS.UTL_URL.ESCAPE : 오라클 내장 함수로 URL 인코딩을 수행합니다
2. SYS.UTL_URL.UNESCAPE : 오라클 내장 함수로 URL 디코딩을 수행합니다
3. URL 인코딩 및 디코딩 수행 시 UTF-8 캐릭터셋을 맞춰야합니다
*/


-- [인코딩 쿼리문 실행 실시]
SELECT '투케이2K' AS "인코딩 원본",
    SYS.UTL_URL.ESCAPE(URL => '투케이2K', URL_CHARSET =>  'UTF-8') AS "인코딩 수행" 
FROM DUAL;


-- [디코딩 쿼리문 실행 실시]
SELECT '%ED%88%AC%EC%BC%80%EC%9D%B42K' AS "디코딩 원본", 
    SYS.UTL_URL.UNESCAPE('%ED%88%AC%EC%BC%80%EC%9D%B42K','UTF-8') AS "디코딩 수행" 
FROM DUAL;



참고 : oracle11g 이상에서만 가능하다.

oracle10g에서는 

SELECT SYS.UTL_URL.ESCAPE('투케이2K') FROM DUAL;

요렇게 사용해야하는데, 원하는 인코딩방식을 적용할수 없다.

그래서 APEX_UTIL.URL_ENCODE 함수를 사용하라고 하는데, APEX_UTIL 패키지 설치가 필요하다.

설치방법은

Examples: Using APEX_UTIL from SQL*Plus (oracle.com)

 

Examples: Using APEX_UTIL from SQL*Plus

 

support.oracle.com

 

요기서, 자세한것은 구글링~

별도의 workspace에 설치하는게 좋을듯, 권한도 필요하다.

APEX_UTIL로 지원하는 함수들이 많다.

 

728x90

'DB-Oracle' 카테고리의 다른 글

[펌]ORACLE TABLE 함수  (0) 2023.09.08
TOAD 사용 단축키  (0) 2023.08.29
[펌] 대용량 데이터 처리(Bulk SQL)  (0) 2023.08.09
ORACLE DB생성, 사용자생성, GRANT  (0) 2023.08.09
ORDER BY nulls FIRST, case when 등등 가능  (0) 2023.08.08