sql >> Databáze >  >> RDS >> Sqlserver

ukládat arabštinu do SQL databáze

Pro své sloupce varchar/char musíte vybrat arabské řazení nebo použít 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'لا أتكلم العربية')

Všimněte si hodnot N před v příkazu insert výše. Pokud to nezmíníte, systém bude s hodnotami zacházet jako s Varchar, nikoli NVarchar.

SELECT * FROM #test

Vrátí

col1                           col2                           col3
------------------------------ ------------------------------ ------------------------------
?? ????? ???????               لا أتكلم العربية               لا أتكلم العربية

Chcete-li zobrazit seznam arabských řazení, použijte

SELECT name, description 
FROM fn_helpcollations() 
WHERE name LIKE 'Arabic%'


  1. Odpovídající všem hodnotám v klauzuli IN

  2. Zaznamenávat VŠECHNY dotazy do databáze SQL Server 2008 Express?

  3. Připojení Oracle k Amazon Aurora

  4. Nesprávné řazení/kompletace/pořadí s mezerami v Postgresql 9.4