2010-04-08 2 views
2

서양인과 아랍어 사용자가 모두 사용하는 Delphi + SQL Server (2k 또는 2005 지원) 앱이 있습니다. 일부 필드 (예 : 이름)의 경우 내 앱은 아랍어 및 서양 언어 문자를 모두 지원할 수 있어야합니다.SQL 데이터 정렬 및 데이터 유형 : 서양 및 아랍어 데이터 모두 지원

영어 또는 아랍어 데이터를 처리 할 필드에 대해 하나의 데이터 정렬 & 데이터 유형을 설정할 수 있습니까? NB : 두 개의 DB를 원하지 않습니다. 두 언어를 모두 지원하는 DB 하나를 원합니다.

답변

3

ISO 8859-6 (또는 Windows 코드 페이지 닮은 cp1256)은 아라비아어와 서양 문자를 ASCII와 동일하게 사용합니다. 악센트 부호가없는 문자와 같은 ASCII가 아닌 '서양'문자를 원하면 운이 없게됩니다.

더 나은 것은 유니 코드를 모두 지원하는 것입니다. 델파이에 대해서는 모르겠지만 SQL Server에서는 네이티브 유니 코드 문자열에 사용할 데이터 유형 인 NVARCHAR을 사용합니다. (내부적으로 UTF-16LE로 저장된다.) VARCHAR의 열

+1

이 델파이 2,009 또는 유니 코드 지원을 위해 더 큰 것을 의미한다. –

+0

@Marcus : 감사합니다. (와우, 유니 코드를 구하는 데 오랜 시간이 걸렸습니다. 얼마나 우울합니다.) – bobince

+0

매우 우울합니다 ... 내 두려움을 확인해 주셔서 감사합니다. 이 시스템은 오래되고 개발/유지되어 있습니다 ... Delphi 5. (이전에 Delphi의 최신 버전으로 개발을 업그레이드했지만 기본 라이브러리에는 상당한 차이가 있었고 프로젝트에서 많은 작업을 다시 수행해야했습니다.) – Forer

1

변화 형() SQLSERVER 그것을 시도하고 runin에서()으로 nvarchar