.NET ile yazdığım bir projede MySQL kullandığımdan bahsetmiştim. Projede geliştirmeyi yaparken veritabanına yazma işlemleri sırasında Türkçe karakterlerde problemler yaşadım.
MySQL'de veritabanında karakter seti olarak UTF-8 belirledim. Veritabanına elle girdiğim datalarda Türkçe karakter problemi yaşamadım. Veritabanından SELECT ile bilgileri çekip sayfada gösterirken herhangi bir problem çıkmıyor, ancak INSERT ve UPDATE işlemlerinde ise Türkçe karakterlerim değişiyordu. Mesela ş harfi s, ğ ise g oluyordu.
SQL Server veya Access ile çalışırken bu şekilde bir problemle karşılaşmayınca sorunun nereden kaynaklandığını bulmak biraz vakit aldı. Sonunda connection string'e birşeyler eklemem gerektiğini buldum. "Charset=utf8" ekleyince MySQL verirabanına Türkçe karakter kaydetme problemi ortadan kalktı.
.NET ile MySQL'e bağlanmak için aşağıdaki gibi bir connection string kullanabilirsiniz :
server=localhost;database=DatabaseName;uid=UserName;password=Password;Charset=utf8
Bu connection string'i genelde kullanılan şekliyle web.config dosyasına aşağıdaki şekliyle ekleyebilirsiniz :
<add key="strConnString" value="server=localhost;database=DatabaseName;uid=UserName;password=Password;Charset=utf8 "/>