Oracle Unicode轉中文(解碼)
CreateTime--2018年3月29日15:23:30
Author:Marydon
情景描述:
將數據庫中的某個字段誤存儲的是Unicode編碼,需要將其改成中文。
測試:
--將Unicode轉中文 select unistr(REPLACE('\u6d4b\u8bd5unicode\u8f6c\u4e2d\u6587','\u','\')) from dual;
結果是:測試unicode轉中文
實現:
--對某字段進行解碼 update tableName set columnName = unistr(replace(columnName,'\u','\'));
封裝:
/*** unicode轉中文*/ CREATE OR REPLACE FUNCTION UNICODE2CHINESE(ENCODE_TEXT IN VARCHAR2)RETURN VARCHAR2 ISV_SQL VARCHAR2(10000); --編碼轉換sqlTEXT_BUFFER VARCHAR2(10000); --輸出中文 BEGINV_SQL := 'select unistr(REPLACE(''' || ENCODE_TEXT ||''',''\u'',''\'')) from dual ';EXECUTE IMMEDIATE V_SQLINTO TEXT_BUFFER;RETURN TEXT_BUFFER; END;
?
?