오라클 DB에 예를들어 ‘가나ㄷ’과 같이 한글입력도중 잘린자료가
들어갔을 경우 ‘가나’와 같이 잘라주는 함수
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
create or replace function sf_hantrim( v_str in varchar2) return varchar2 is l_str varchar2(2000); l_last varchar2(2); l_ascii number; l_down number; /*==================================================================* * +---------------------------------------------------------+ * * | 프로그램 ID : sf_hantrim.sql | * * +---------------------------------------------------------+ * * | 프로그램 명 : 한글 field right trim | * * +---------------------------------------------------------+ * * | 프로그램 설명 | * * +---------------------------------------------------------+ * * | 한글 자료중 KSC5601에 없는 한글자료를 rihgt trim한다 | * * | 참고자료 : KSC5601 code table | * * +---------------------------------------------------------+ * *==================================================================*/ begin l_str := nvl(rtrim(v_str),' '); if length(l_str) = 0 then l_str := ' '; end if; l_last := substr(l_str,length(l_str),1); l_ascii := ascii(l_last); if l_ascii >= 45217 and l_ascii <= 51454 then l_down := mod(l_ascii,256); if l_down >= 161 and l_down <= 254 then return l_str; else return nvl(substr(l_str,1,length(l_str) - 1),' '); end if; else return l_str; end if; end sf_hantrim ; |