J'ai essayé de stocker la chaîne arabe dans la base de données SQL 2008, mais elle s'est convertie en "point d'interrogation" pourquoi ? et que dois-je faire ?
Réponses
Trop de publicités?Vous devez choisir une collation arabe pour vos colonnes varchar/char ou utiliser 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' ')
Notez les valeurs N avant dans l'instruction insert ci-dessus. Si vous ne le mentionnez pas, le système traitera les valeurs comme Varchar, et non comme NVarchar.
SELECT * FROM #test
Retour
col1 col2 col3
------------------------------ ------------------------------ ------------------------------
?? ????? ???????
Pour voir une liste des classements arabes, utilisez
SELECT name, description
FROM fn_helpcollations()
WHERE name LIKE 'Arabic%'
Basheer AL-MOMANI
Points
5565
A Ghazal
Points
98
nazim hatipoglu
Points
94
Pradeepkumar Cb
Points
31