SQL regole di confronto e Tipo dati: supportare sia i dati occidentali e arabi in un campo
Domanda
Ho un (2k o 2005 supportato) app Delphi + SQL Server che viene utilizzato da entrambi gli utenti occidentali e arabi. Per alcuni campi (vale a dire il nome) la mia applicazione ha bisogno di essere in grado di supportare sia la lingua araba e caratteri delle lingue occidentali.
E 'possibile impostare un singolo collazione e tipo di dati per un campo di maniglia inglese o dati in arabo? NB:. Non voglio 2 separata DB, voglio un DB che supporta entrambe le lingue
Soluzione
ISO 8859-6 (o il suo Windows tabella codici sosia cp1256) ti dà arabo e caratteri occidentali in quanto i bassi 128 caratteri sono gli stessi di ASCII. Tu sei fuori di fortuna se si vuole non-ASCII caratteri ‘occidentali’ come le lettere accentate.
Meglio, però, sarebbe quello di supportare tutte Unicode. Non so su Delphi, ma in SQL Server si ottiene NVARCHAR, che è il vostro tipo di dati di scelta per le stringhe Unicode nativo. (Memorizzati come UTF-16 internamente.)
Altri suggerimenti
cambiamento tipo di colonne varchar () per nvarchar () in sqlserver lo provo e runin