Sunday, January 04, 2009

mysql select türkçe where aynı

google da bu keywordlerle arama yaptım ve sonuç bulamadım. ondan bu yazıyı yazim dedim. problemim "select * from table1 where col1='AC'" ve "select * from table1 where col1='AÇ'" sql cümlelerinin aynı sonucu getirmesiydi. ç=c gibi algılıyordu sorgum. bu durum aslında çok kötü değil sonuçda gereğinden fazla sonuç geliyor ama nokta atışı yapmamız gereken yerlerde fazlalık çıkarıyordu. başladım bakınmaya bu keywordlerden bi hayır yok habire mysql de türkçe problemi çeken forum postları çıkdı karşıma.

bu arada demeden geçemicem türkçe forumlar bildiğimiz arama spamı kaynıyor. seo ayarı verilmiş forumlar habire replike içerikden aynı sorular aynı cevaplarda oluşuyor. allahdan noscript kullanıyorumda reklam yığınıyla karşı karşıya kalmıyordum. kıl oluyorum hep aynı şeyleri görmekden. neyse bu birazda google amcamın hatası

durum mysqlde şöyle oluyor. eğer kolonunuzu "utf8_general_ci" ise bu istediğin dilde o kolona yaz ve büyük küçük harf duyarsız kullan demek yani AC ve ac aramalarımda aynı sonuç geliyor demek. ve aynı zamanda anlaşıldıki dile bakma ç = c gibide davran demek oluyormuş o kolonumu "utf8_turkish_ci" yaptım ve c!=ç oldu. yani türkçe duyarlı case insensitive kolon. ci sanırım case insensitive demek.

sanırım biraz performansı düştü sitemin ondan emin değilim sonuçda shared hostingde bir ingilizce sözlük.

No comments:

sony xperia 10 VI did not like the case

After iphone 16 I wanted to test an android and looks like sony xperia 10 VI is nice, which is 6.1 inches, but it was narrow and longer than...