2009-03-24 2 views
2

다음 구조로 구성된 테이블이 있습니다.프랑스어 텍스트가 SQL Server에 저장된 것으로 잘못 표시됩니다. 올바르게 표시되는 방법

CREATE TABLE [dbo].[tblData](
    [ID] [numeric](18, 0) NOT NULL, 
    [QID] [varchar](25) NOT NULL, 
    [Data] [nvarchar](255) NULL, 
    CONSTRAINT [PK_tblData] PRIMARY KEY CLUSTERED 
    (
     [ID] ASC, 
     [QID] ASC 
    ) 
) ON [PRIMARY] 

위의 예에서 [data] 열에는 다양한 언어가 혼합되어 있습니다. 우리는 적절한 코드 페이지를 설정 한 웹 사이트를 통해이 데이터를 수집합니다. Google 표에 삽입 된 데이터는 데이터를 수집 할 당시 웹 페이지에서 코드 페이지가 설정되어있는 것이 무엇이든간에 이해합니다. 우리는이 정보를 다른 곳에 저장했습니다.

우리가 사용하는 모든 언어가 테이블에서 잘 나오고 있습니다. 예를 들어, 중국어가 나오고 필요에 따라 표시됩니다. 이 데이터를 유니 코드 텍스트 파일로 덤프하려고합니다. 구체적으로 말하자면 : "UCS-2 LE"프랑스어가 나오지 않는 언어가 하나뿐입니다. 어떤 이유로 인해 일반적으로 악센트 부호가있는 문자가 완전히 잘못 나오는 것입니다. 내가 찾은 것은 데이터 (희망)가 잘못된 문자로 "저장"된 것처럼 보입니다.

동료는이 데이터가 테이블에있을 가능성이 높다고 생각하고 데이터를 올바르게 표시하기 위해 문자 세트를 수정하거나 올바른 코드 페이지를 수정하기 만하면됩니다. 데이터를 UCS-2 LE에 저장하기 전에 텍스트 파일.

누구든지 내 문제에 대해 통찰력을 줄 수 있습니까? 감사합니다!

업데이트 : http://windowsitpro.com/windowsstorage/Article/ArticleID/14045/windowsstorage_14045.html -이 기본적으로 내가 할 필요는 것은 할 수 없다고 말하고있다 :이 발견? 나는 내가하고 싶은 것이 약간 다르지만 그 원인은 희망이라고 생각한다.

답변

1

동료가 맞습니다. 데이터가 UNICODE 데이터 유형으로 저장되므로 자국어 형식이 보존되어야합니다.

데이터를 선택하면 요청을 실행 한 사용자, 즉 로케일에 적절한 데이터 정렬이 사용됩니다.

는 SQL 서버에서이 도움이

http://msdn.microsoft.com/en-us/library/ms144260(SQL.90).aspx

희망을 정렬을 사용하는 다음의 온라인 참조를 참조하십시오. 건배.

+0

도움이되었습니다. 감사합니다. 코드 페이지 863으로 변환해야하고 SQL Server가 해당 코드 페이지를 지원하지 않기 때문에 원하는 작업을 수행 할 수 없다는 사실을 지적했습니다. –

관련 문제