질의작성

Oracle UTL_ENCODE.TEXT_ENCODE를 CUBRID로 변환하기

by 김창휘 posted Mar 21, 2016

Oracle에서의 UTL_ENCODE는 호스트 간의 데이터를 전송할 수 있도록 표준 인코딩 기술로 인코딩하는 함수를 제공하는 패키지로 TEXT_ENCODE는 문자 집합을 갖는 문자열을 인코딩하는 함수로 변경할 문자 집합에 따라 텍스트를 변환하고 인코딩한다.


Oracle의 UTL_ENCODE.TEXT_ENCODE 함수는 CUBRID의 TO_BASE64 함수를 사용하여 문자열을 BASE-64 암호화 형식으로 변환할 수 있다.


<Oracle의 UTL_ENCODE.TEXT_ENCODE 사용예제>


replace('https://www.data.go.kr/subMain.jsp#'|| UTL_ENCODE.TEXT_ENCODE('/comm/commonSearch/orginDataSet$@^012m11$@^publicDataPk='||MST.PUBLIC_DATA_PK||'$@^brmCd='||FN_SER_BRM_CD_PATH_INFO(MST.BRM_CODE, 'C')||'$@^gridFlag=Y$@^orgIndex=DATA', 'WE8ISO8859P1', 1),chr(13)||chr(10),'') AS DETAIL_SCRIN_URL


<CUBRID의 TO_BASE64 함수를 사용하여 변환한 예제>

FN_SER_BRM_CD_PATH_INFO 함수를 Scalar Sub-query로 변환한 부분이 포함된 것을 감안하고 참고 바람.


,'https://www.data.go.kr/subMain.jsp#'||TO_BASE64('/comm/commonSearch/orginDataSet$@^012m11$@^publicDataPk='||MST.PUBLIC_DATA_PK||'$@^brmCd='|| (SELECT CODE_ID  /* FN_SER_BRM_CD_PATH_INFO 함수를 Scalary Sub-query로 변환 */
 FROM TC_PUBS_CMMN_CODE
 WHERE 1=1
  AND CMMN_CL_CODE = 'OCL'
  AND USE_AT = 'Y'
  AND CODE_ID = (SELECT TC.NEW_UPPER_CODE FROM TC_BRM_CD_SYSTM TC WHERE TC.BRM_CD = MST.BRM_CODE) ) ||'$@^gridFlag=Y$@^orgIndex=DATA') AS DETAIL_SCRIN_URL




Articles

1 2 3 4 5 6 7 8 9 10