Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

utf8_bin vs. utf_unicode_ci


Depende do que você precisa.

O utf8_bin collation compara strings com base puramente em seu Unicode ponto de código valores. Se todos os pontos de código tiverem os mesmos valores, as strings serão iguais. No entanto, isso desmorona quando você tem strings com composição diferente para combinar marcas (compostas versus decompostas) ou caracteres que são canonicamente equivalentes, mas não têm o mesmo valor de ponto de código. Em alguns casos, usando utf8_bin resultará em strings que não correspondem quando você espera. Teoricamente, utf8_bin é o mais rápido porque nenhuma normalização Unicode é aplicada às strings, mas pode não ser o que você deseja.

utf8_general_ci aplica a normalização Unicode usando regras específicas de idioma e compara strings sem distinção entre maiúsculas e minúsculas. utf8_general_cs faz o mesmo, mas compara strings diferenciando maiúsculas de minúsculas.