mehmetduran.com - Paylaşmak Güzeldir...
Asp.net ve MySql'de Türkçe Karakter Sorununu Çözme
Sitemi MySql ile hazırladım ve birçok sorunla karşılaştım. Bunlardan en önemlisi MySql ile uğraşan herkesin başına gelebilen Türkçe karakter sorunu. Bu sorunu yaşamamak için MySql'de oluşturduğumuz veritabanının dilini Latin5 olarak seçmemiz gerekir.
Bu MySql'de tuttuğumuz veriler için. Ancak birde veritabanına veri eklerken sorun ortaya çıktı ve 'ı' ile 'ş' bozulmaya başladı. Bunu önlemek için ise ekleme yaparken kullandığımız veritabanı bağlantı cümlesini aşağıdaki gibi yazmak gerekecek:

"server=localhost; user id=mehmet; password=mehmet; database=mehmet; charset=latin5"

Gördüğümüz gibi ekleme yaparken kullandığımız bağlantı cümlemizin sonuna eklediğimiz ifade ile Asp.net ile MySql veritabanına kayıt eklerken de sorunsuz bir biçimde kayıt yapabiliyoruz.
Mehmet Duran 18 Ağustos Pazartesi 2008 9 13533 5,0
Bookmark and Share
Bu Yazıyı Değerlendirin.
Konuyla İlgili Olabilecek Diğer Yazılar Asp.net ile Veritabanı İşlemlerinde Etkin Kodlama Yöntemi LINQPad .Net için Hazırlanan MySql Connector Güncellendi MySql'de Fonksiyon Tanımlama ve Kullanma MySql Workbench
Yorumlar
Yorum Yaz
RSS Yorum Takibi
Kadir 16 Haziran Salı 2009 10:22 #1
Merhaba ilk önce çalışmaların için seni tebrik ederim. Şahsen beni uzun araştırmalardan kurtarıyorsun. Soruma gelince ben mysql stored procedure ile yeni kayıt eklerken türkçe karekter sorunu yaşadım bu yazdıklarını uyguladım ama olmadı nasıl çözebilirim sence.
Mehmet Duran 16 Haziran Salı 2009 11:23 #2
Eğer bağlantı cümlen buradaki gibiyse hatanın sebebi veritabanındaki veri eklediğin tablonun Türkçe karakter destekelememesi olabilir. Tablonun ve sutünların Türkçe karakter desteği olması gerekir. Bunun için karakter seçeneğini hem tablo için hem sutün için Latin5 yapmalısın.
Kadir 16 Haziran Salı 2009 12:12 #3
evet dediğin gibi kolonda tabloda latin5 türkçe karekter olunca giriş yapmıyor. stored procedure olduğu içinmi sorun var acaba sen veri girişlerini stored procedure ilemi yazıporsun sql ilemi
Mehmet Duran 16 Haziran Salı 2009 12:25 #4
Veri girişlerini sql sorgusu ile yapıyorum. Ancak daha önce procedure ile de yapmıştım ve sorun yoktu. Şimdi de denedim ve bende bir sorun yok. Tablo ve sütun karakter gruplarına dikkat et. Tablo aluştururken tablo karakter grubu seçtiğinde sütunların karakter grupları değişmiyor. Sutünların karakter gruplarına bak istersen. Eğer burada da sorun yoksa neden olduğunu bilmiyorum. Çünkü bende hem sql ile hem de procedure ile sorunusuz çalışmakta.
Kadir 16 Haziran Salı 2009 12:48 #5
Tabloyu silip latin5 olarak kolondahil yeniden oluşturdum ama olmadı acaba senin c# ve mysql kodunu görebilirmiyim belki orda bir sorun vardır.
Mehmet Duran 16 Haziran Salı 2009 12:54 #6
Benim kullandığım c# kodları buradaki ve buradaki yazımda belirtmiş olduğum kodlar ile aynı sayılır. Son olarak projenin de karakter grubu Türkçe olark ayarlandı. Bu da soruna neden olabilir. Mysql kodları ise aynı. Karakter grubu hem tablo için hem sütunlar için Latin5. Ancak sorun devam ederse utf8 olarak bir dene istersen.
Kadir 16 Haziran Salı 2009 13:06 #7
ben bu yazılarınızdan faydalandım ama onlar select için örnek ben şu şekilde yazdım bağlantı cümlesi bir fonksiyon içinde türkçe karekter olmayınca güzelde... kodumda bir eksik varmı acaba? http://www.csharpnedir.com/forum2/forum_posts.asp?TID=24437 bu adreste kodumu görebilirsiniz rido66
Kadir 16 Haziran Salı 2009 13:29 #8
MySql kurarken detaylı kurdum ve ordan charset latin5 olarak seçtim ve sorun kalmadı tablo ve kolondada seçmeye gerek kalmıyor default olarak latin5 olmuş oluyor ilgin için çok tşk ederim. Soruna ıdaklanmamda yardımcı oldun.
Mehmet Duran 16 Haziran Salı 2009 13:33 #9
Evet kurarken ben de default olarak Latin5 seçtim ve tüm tabloların özelliği default olarak Latin5 oluyor. Böyle yapmak daha doğru. Sorununu çözdüğüne sevindim. İyi Çalışmalar.
İsim :
Site :
Yorum :

Buradan bu yazıya ait yorumları RSS olarak takip edebilirsiniz.

Bu servis ile yazılara eklenen yorumları RSS ile takip ederek konu ile ilgili başkaları tarafından yapılan yorumları veya konuyla ilgili sorduğunuz sorulara verilen cevapları görebilirsiniz.
Başarısızlıklarınız ile soylu bir şekilde yüzleşin, başarıdan farkı kalmayacaktır.
Bölümler
Yazılar
Arşiv
Arama
Linkler
Site İçi Arama
Son Zamanlarda Ne Yapıyorum ?
İstatistikler - Araçlar - Reklam
İstatistikler
Sayaç
Mehmet Duran | mehmetduran.com | Copyright © 2009