2010-12-27 4 views
1

영어와 힌디어의 두 가지 언어로 된 많은 데이터가 포함 된 MS Excel 파일에서 데이터를 삽입해야하는 Windows 응용 프로그램을 개발 중입니다. 영어 데이터를 쉽게 가져올 수 있지만 힌디어 데이터를 가져 오는 동안 일부 영어 텍스트로 변환되었습니다.힌디어 데이터 SQL Server 2005 데이터베이스

모든 필드에 대해 데이터 형식으로 NVARCHAR을 사용하고 있습니다. 힌디어 언어 용 영어 및 SHUSHA 글꼴 용 Arial 글꼴. Excel에서는 데이터가 올바르게 표시됩니다. 그러나 SSMS와 Applicaton에서 힌디어 데이터는 영어 문자로 표시됩니다.

친절히 도움!

+0

데이터를 어떻게 가져 오나요? Excel은 셀 내용을 유니 코드로 저장하지만 일부 언어 (예 : Classic ASP)는 유니 코드를 올바르게 처리하지 못합니까? – Sparky

+0

OleDbDataReader를 사용하여 Excel 파일에서 데이터를 가져옵니다. 그런 다음 sql 테이블 행을 현명하게 채 웁니다. – macsys

답변

1

NVARCHAR은 확실히 힌디어 유니 코드 문자를 저장할 수 있습니다. 삽입 할 때 SqlDbType.VarChar 데이터 유형을 사용하여 SqlParameter을 사용하고있는 경우 등 SQL 삽입 코드에 문제가있을 수 있습니다. 이 코드를 게시하면 명확 해집니다.

+0

OleDbDataReader를 사용하여 Excel에서 데이터를 읽습니다. 다른 변수의 각 필드에 데이터를 넣은 다음 해당 변수를 사용하여 SQL 테이블에 레코드를 삽입하십시오. – macsys

+0

나는 테이블에 삽입해야하는 모든 데이터 앞에 접두사 N을 붙여야한다. 하지만 이상한 문제가 다시 발생합니다. Windows 7 컴퓨터에서 SSMS와 내 응용 프로그램 모두 올바른 형식의 힌디어 데이터를 표시합니다. 그러나 Win XP를 사용하면 Hinid 데이터가 아닌 모든 위치의 Box 만 표시됩니다. 도와 주실 수 있습니까? – macsys

+0

SSMS에서 "Results to text"를 시도하면 어떻습니까? 이 유니 코드 문자를 표시하기 위해 더 신뢰할 수있는 것으로 나타났습니다. 이유를 모르겠다. 어쩌면 다른 글꼴을 사용합니까? –