아랍어에는 ا (alef) 및 أ (hamef와 함께 alef)와 같은 문자가 있습니다.
사용자는 그것들을 서로 바꿔 쓸 수 있고 우리는 그것들을 서로 바꾸어 검색하려고합니다. SQL Server는 이들을 개별 문자로 취급합니다. SQL을 동일한 문자로 취급하도록하려면 어떻게해야합니까?
삽입시 أ (alef와 hamza)를 ا (alef)로 대체하려고 생각했지만 우리는 ا (alef)와 أ (hamf와 hamza)뿐만 아니라 아랍어로 많은 대안을 가지고 있습니다.
나는 시도 Arabic_CI_AS
하고 Arabic_CI_AI
있지만이 문제가 해결되지 않습니다.
문제를 재생성하는 스크립트는 다음과 같습니다.
CREATE TABLE [dbo].[TestTable] (
[ArabicChars] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_TestTable] PRIMARY KEY CLUSTERED
(
[ArabicChars] ASC
)
) ON [PRIMARY];
INSERT INTO TestTable values (N'احمد');
INSERT INTO TestTable values (N'أحمد');
SELECT *
FROM TestTable
WHERE ArabicChars like N'ا%';
결과는 다음과 같습니다.
ArabicChars
احمد
(1 row(s) affected)
원하는 결과는 삽입 한 두 행 모두입니다.
ا and أ