Ответ 1
Вам нужно выбрать арабское сопоставление для ваших столбцов varchar/char или использовать Unicode (nchar/nvarchar)
CREATE TABLE #test
(
col1 VARCHAR(100) COLLATE Latin1_General_100_CI_AI,
col2 VARCHAR(100) COLLATE Arabic_CI_AI_KS_WS,
col3 NVARCHAR(100)
)
INSERT INTO #test VALUES(N'لا أتكلم العربية',N'لا أتكلم العربية',N'لا أتكلم العربية')
Обратите внимание на N перед значениями в инструкции вставки выше. Если вы не упомянули об этом, система будет рассматривать значения как Varchar, а не NVarchar.
SELECT * FROM #test
Возвращает
col1 col2 col3
------------------------------ ------------------------------ ------------------------------
?? ????? ??????? لا أتكلم العربية لا أتكلم العربية
Чтобы увидеть список арабских сопоставлений, используйте
SELECT name, description
FROM fn_helpcollations()
WHERE name LIKE 'Arabic%'