2011-07-20 10 views
84

Jakie jest uzasadnienie ustawienia latin1_swedish_ci jako kompilowanej wartości domyślnej, gdy inne opcje wydają się bardziej uzasadnione, np. latin1_general_ci lub utf8_general_ci?Dlaczego domyślne sortowanie MySQL latin1_swedish_ci?

+4

Szwedzi właśnie kupili ten honor [żart] – zerkms

+6

Możliwy duplikat [Dlaczego MySQL używa Latin1 \ _swedish \ _ci jako domyślnego?] (Http://stackoverflow.com/questions/3936059/why-does-mysql-use -latin1-swedish-ci-as-the-default) – shnisaka

Odpowiedz

82

The bloke who wrote it był współprzewodnictwem operatora Swedish company.

Prawdopodobnie z podobnych powodów domyślny język Microsoft SQL Server us_english.

+3

Jest on fiński, ale fiński i szwedzki mają prawie takie same znaki specjalne, więc korzystają z tego samego zestawu znaków niewrażliwych na wielkość liter – kommradHomer

+2

Mówiąc o "dobrych wartościach domyślnych" . Co oczywiście nie jest. Wspaniale, że po co, 20 lat? zmienili to na rozsądną wartość domyślną, na przykład '' utf8_general_ci'''. Dobra robota, MySQL! –

+1

i pomyślałem, że to może być dla mnie najlepsze, bc nie jestem ekspertem. Moje życie jest kłamstwem –

68

latin1_swedish_ci to zestaw znaków jednobajtowych, w przeciwieństwie do utf8_general_ci.

W porównaniu z latin1_general_ci obsługuje wiele dodatkowych znaków używanych w językach europejskich. Jest to więc najlepszy wybór, jeśli nie wiesz, jakiego języka użyjesz, jeśli będziesz zmuszony używać tylko zestawów znaków jednobajtowych.

+1

Nie odpowiada * dlaczego * – gbn

+26

Podoba mi się ta odpowiedź, ponieważ stara się obiektywnie uzasadnić wybór łacińskiego szwedzkiego. Jednak zaakceptowana odpowiedź wydaje się bardziej prawdopodobnym wyjaśnieniem z punktu widzenia społecznego, dlaczego właśnie wybrano szwedzki. – Alan

+0

Z pewnością możliwe, że było to rozumowanie autora, a tylko zbieg okoliczności, że jest Szwedem. Wydaje się zasadne, że Szwed będzie chciał (i wie) poprzeć dodatkowe postacie europejskie. – Matt

Powiązane problemy