MSSQL 한자 처리 (문자 인코딩 집합 및 데이터 정렬)

출처: 인터넷
작성자: 사용자
키워드: 네트워크 프로그래밍 MSSQL 자습서

MSSQL 한자 처리 (문자 인코딩 집합 및 데이터 정렬)
SQL 서버 중국 처리 포함 문자 집합 코딩 및 정렬 규칙, 매우 얽힌된 문제입니다.

SQL 코드

--ascii 문자


선택 = 캐스트 (이진 (2) n) x N U n 사이 고 126 Nums에서 nchar (n) =


--unicode 한자


선택 = 캐스트 (이진 (2) n) x N U n 19968 40869
사이 Nums에서 nchar (n) =

19968 0x4e00


40869 0x9fa5


--The 두 가지 조건에 따라 한자
는 문자열에 포함 되어 있는지 확인 하는 데 사용 됩니다.
n '% [-] %'와 같은
chinese_prc_ci_as
대조
같은 n '[a-] % %' 대조 chinese_prc_bin



-This 중국 문자의 순서 정렬 규칙의 위 2 개의 종류에서 다른 때문입니다.


--Chinese 전체 각도 문장 부호


선택 = 캐스트 (이진 (2) n) x N 정리 nchar (n), 유비 = 65281 및 65374
사이의 n Nums에서 nchar (n-65248) =

선택 NCHAR (12288), nchar (32)


65281 0xff01!!


65374 0xff5e ~ ~


--The 조건 다음 전각 문장 부호
는 문자열에 포함 되어 있는지 확인 하는 데 사용 됩니다.

n 같은 ' % [! -~] % ' Chinese_prc_bin

대조

전각 문장 부호의 변환:

SQL 코드


--full2half


함수 [dbo]를 만듭니다. [Full2half] (


@string nvarchar (max)


)


는 nvarchar (max)
를 반환합니다.




/*


가득 차 있는 각 (전자) 반-폭 (반폭)
로 변환

*/


시작


선언 @chr nchar (1)


@i int
선언

세트 @string = 바꾸기 (@string, n ', n')


설정 @i = Patindex (n ' % [! -~] % ' 대조 Latin1_General_BIN, @string)

@i > 0
동안


시작


세트 @chr (@string, @i, 1) 문자열을 =


세트 @string 바꾸기 (@string, @chr, nchar (유니코드 (@chr)-65248)) =


설정 @i = Patindex (n ' % [! -~] % ' 대조 Latin1_General_BIN, @string)





는 @string
반환







함수 [dbo]를 만듭니다. [Half2full] (


@string nvarchar (max)


)


는 nvarchar (max)
를 반환합니다.




/*


절반 각도 (반폭) 전체 변환할 각도 (전자)


*/


시작


선언 @chr nchar (1)


@i int
선언

세트 @string = 바꾸기 (@string, n ', n')


세트 @i = Patindex (n ' % [!-~] % ' 대조 Latin1_General_BIN, @string)

@i > 0 동안



시작


세트 @chr 부분 문자열 (@string, @i, 1) =


세트 @string 바꾸기 (@string, @chr, nchar (유니코드 (@chr) +65248)) =


세트 @i = Patindex (n ' % [!-~] % ' 대조 Latin1_General_BIN, @string)





는 @string
반환




이동
관련 문서

연락처

이 페이지의 내용은 인터넷에서 가져온 것이므로 Alibaba Cloud의 공식 의견이 아닙니다.이 페이지에서 언급 된 제품 및 서비스는 Alibaba Cloud와는 관련이 없으므로이 페이지의 내용이 골칫거리 인 경우 저희에게 알려주십시오. 우리는 5 일 근무일 이내에 이메일을 처리 할 것입니다.

커뮤니티에서 표절 사례를 발견한 경우 info-contact@alibabacloud.com 으로 관련 증거를 첨부하여 이메일을 보내주시기 바랍니다. 당사 직원이 영업일 기준 5일 내에 연락 드리도록 하겠습니다.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.