Mapping for Chinese / Insert Chinese / JDBC Receiver Unicode problem

JDBC Receiver Channel 을 이용해서 MS-SQL에 특정 컬럼에 중국어가 들어갈때 그걸 처리하는 방법을 소개드리고자 합니다
-> Handle for Chinese in message mapping / JDBC Receiver Unicode problem



위 Message Mapping 그림을 보시면 DEPT_NM 이란 컬럼에 중국어가 들어갑니다
이걸 처리하기 위해서는 첫번째로,
해당 컬럼에 "Attribute"로 "hasQuot"를 사용하고 값을 "no"로 입력해 줍니다
기본적으로 "yes" 되지면 "no"로 변경하면 함수 사용이 가능합니다



두번째로, DEPT_NM에 들어갈 데이터를 N'value'로 만들어줍니다
MS SQL에서 유니코드(다국어)를 사용하기 위해서는
nvarchar 또는 nchar 형식으로 지정되어야 합니다
해당 형식을 사용하기 위해서는 'N'이 접두어가 되어야 합니다
참고로, 'N'은 National을 의미합니다

이렇게 셋팅 후 Interface 가 되면...

- <Statement>
- <IF_DEPT_INFO action="UPDATE_INSERT">
  <table>dbo.IF_DEPT_INFO</table>
- <access>
  <DEPT_CD></DEPT_CD>
  <DEPT_NM hasQuot="no">N'企划人事部'</DEPT_NM>
  <UP_DEPT_CD></UP_DEPT_CD>
  <USAGE_YN></USAGE_YN>
  <COMPANY_CD></COMPANY_CD>
  <DEPT_FULL_CD></DEPT_FULL_CD>
  <DEPT_FULL_NM hasQuot="no">N'企划人事部'</DEPT_FULL_NM>
  <UNIT_TYPE_CD></UNIT_TYPE_CD>
  <SORT_KEY></SORT_KEY>
  <SHORT_NM hasQuot="no">N'企划人事部'</SHORT_NM>
  </access>
- <key>
  <DEPT_CD></DEPT_CD>
  </key>
  </IF_DEPT_INFO>
  </Statement>

해당 Scenario에 payload 입니다
위에 보시면 DEPT_NM 컬럼에 중국어가 들어가게 됩니다

도움이 되셨으면 좋겠네요 lol

감사합니다



이 블로그의 인기 게시물

우리집 인테리어 공개(광명 이편한세상 25평)

소노벨 비발디파크 맛집 바베큐단월620 "캠핑 감성"

SAP Netweaver Developer Studio with PI