MySQL’de Collation’lar

  05/18/2010, Yazar: Özgür Koca, Kategori: Veritabanı

UTF-8 bildiğiniz üzere çok geniş bir karakter setini destekliyor. Peki utf8_turkish_ci, utf8_general_ci, utf8_unicode_ci gibi collation’lar ne işe yarıyor?

Collation aslında tablodan select yaparken, tabloyu sıralarken ya da tablolar arasında join yaparken işimize yarayan bir şey. Hangi karakterlerin hangi karakterlerle aynı şeyi ifade ettiğine mysql bu bilgilere göre karar veriyor (collation tablosuna göre).

Örneğin utf8_turkish_ci olan bir tabloda, “cafe” kelimesi için select sorgusu yazdığınızda, sorgu size “café” içeren kayıtları da döndürmez; ama tablo utf8_general_ci ya da utf8_unicode_ci ise döndürür.

Bu collation’ların tablolarına şağıdaki linkten bakılabilir:

http://www.collation-charts.org/mysql60/mysql604.utf8_turkish_ci.html


utf8_unicode_ci çok dillilik içeren sistemlerde geniş bir dil yelpazesinde sonuçlar sunuyor bize. Yaptığımız tabloların default collation’larını ve text fieldların collationlarını utf8_unicode_ci olarak ayarlarsak, üzerinde çalıştığımız sistemin çokdilliliği desteklemesini kolaylaştırmış oluruz.


Önemli bir not:
Farklı collation’lar arası join işlemi mümkün değil, bu yüzden tüm database için aynı collation’ı kullanmak en temiz çözüm.
Kaynak:

farklı collation (1), utf8_general_ci utf8_turkish_ci (1), utf8_turkish_ci utf8_general_ci (1)







Bu yazıya puan verin: 1 Puan2 Puan3 Puan4 Puan5 Puan6 Puan7 Puan8 Puan9 Puan10 Puan


Biraz gürültü yapın





Not: Yazdığınız yorum yönetici tarafından onaylandıktan sonra yayınlanacaktır.


  Yorumlara eposta ile abone ol




  • Hakkında | İletişim | Wordpress.org | RSS | Abone Ol

  • (c) 2005-2009 Wordpress Tema: Tankado & Theme by Tankado.com