다음을 통해 공유


유니코드 인코딩 체계 간 데이터 변환 관리

이 항목에서는 데이터와 상호 작용하는 클라이언트 응용 프로그램과 서버측 데이터 저장소에서 모두 유니코드를 사용할 수 있지만 서로 다른 유니코드 인코딩 체계를 사용하는 경우 문자 데이터의 무결성을 유지하는 방법을 설명합니다. SQL Server에서 유니코드는 UCS-2 인코딩 체계로 저장됩니다. 그러나 많은 클라이언트에서 일반적으로 UTF-8이라고 하는 다른 인코딩 체계로 유니코드를 처리합니다. 대개 웹 기반 응용 프로그램이 이에 해당합니다.

본질적으로 한 인코딩 체계를 다른 인코딩 체계로 변환하고 있기 때문에 유니코드 서버와 비유니코드 클라이언트간 데이터 변환 관리클라이언트/서버 코드 페이지 간 데이터 변환 관리 항목에서 논의되는 같은 솔루션도 대부분 적용됩니다. 서버로 보내는 유니코드 문자열 상수 앞에는 대문자 N을 사용해야 합니다. 웹 기반 응용 프로그램의 경우 클라이언트측 HTML 페이지의 META 특성 아래에 CHARSET 코드를 지정해야 합니다. 예를 들어 유니코드 인코딩 체계가 UTF-8인 경우 CHARSET = utf-8을 지정합니다. 서버측에서는 Session.CodePage 속성이나 @Codepage 지시어를 사용하여 클라이언트의 인코딩 체계를 지정합니다. 예를 들어 codepage=65001은 UTF-8 인코딩 체계를 지정합니다. 이러한 지침을 따를 경우 인터넷 정보 서비스(IIS) 5.0 이상 버전에서 사용자의 추가 작업 없이 UTF-8과 UCS-2 간의 변환을 원활하게 처리합니다.

Visual Basic 응용 프로그램에서 문자열은 UCS-2 인코딩 체계로 처리됩니다. 따라서 Visual Basic 응용 프로그램과 SQL Server 인스턴스 간의 인코딩 체계 변환을 명시적으로 지정할 필요가 없습니다.