avete diversi problemi da risolvere per rendere correttamente questo lavoro.
In primo luogo, hai scelto il utf8
set di caratteri per contenere tutto il vostro testo. Questa è una buona scelta. Se si tratta di un'applicazione new-in-2016, è possibile scegliere il set di caratteri utf8mb4
. Una volta scelto un set di caratteri, i tuoi utenti dovrebbero essere in grado di leggere il tuo testo.
In secondo luogo, per il bene della ricerca e l'ordinamento (WHERE
e ORDER BY
) è necessario scegliere un confronto appropriata per ogni lingua. Per il tedesco moderno, utf8_general_ci
funzionerà abbastanza bene. utf8_unicode_ci
funziona un po 'meglio se hai bisogno di un ordinamento lessicale standard. Leggi questo. http://dev.mysql.com/doc/refman/5.7/en/charset-unicode-sets.html
Per lo spagnolo moderno, è necessario utilizzare utf8_spanish_ci
. Questo perché in spagnolo i caratteri N e Ñ non sono considerati uguali. Non so se la collazione generale funzioni per il turco.
Si noti che sembra aver confuso le nozioni di set di caratteri e regole di confronto nella domanda. Hai menzionato una collazione con la tua colonna turca e un set di caratteri con la tua colonna tedesca.
È possibile specificare in modo esplicito set di caratteri e regole di confronto nelle query. Ad esempio, è possibile scrivere
WHERE _utf8 'München' COLLATE utf8_unicode_ci = table.name;
In questa espressione, _utf8 'München'
è una costante carattere e
constant COLLATE utf8_unicode_ci = table.name
è un identificatore di richiesta che include un nome di confronto esplicito. Leggi questo. http://dev.mysql.com/doc/refman/5.7/en/charset-collate.html
Terzo, si può decidere di assegnare un predefinito di confronto da ogni colonna specifica lingua. Le regole di confronto predefinite vengono inserite negli indici, quindi contribuiranno ad accelerare la ricerca.
Quarto, gli utenti dovranno utilizzare un metodo di input appropriato (mappatura della tastiera, ecc.) Per presentare i dati all'applicazione. Speriamo che gli utenti di lingua turca sappiano come digitare parole turche.
controllare con UTF-8 –