2014-12-07 38 views
2

我用MySQL的asp.net字符集不正常工作

MySqlConnection con = new  MySqlConnection("server=localhost;database=m1cleedb;uid=m1cleeuser;pwd=**;pooling=false"); 
     MySqlCommand cmd = new MySqlCommand("insert into duyurular(adi, kim_icin, duyurulma_tarihi, detay) values(?p_1, ?p_2, ?p_3, ?p_4) ", con); 
     cmd.Parameters.AddWithValue("?p_1", duyuru_adi.Text); 
     cmd.Parameters.AddWithValue("?p_2", DropDownList3.SelectedItem.Text.ToString()); 
     cmd.Parameters.AddWithValue("?p_3", duyuru_tarihi.Value.ToString()); 
     cmd.Parameters.AddWithValue("?p_4", duyuru_editor.Value); 
     con.Open(); 

代碼塊插入我的「duyurular」表格中的行。 我想在這裏得到土耳其人的支持,但無論我嘗試了什麼,它都不起作用。 我希望能夠在?p_1中加入「»」字符。但是當我這樣做時,它會插入「g」。

然後,我決定在我的MySQL WorkBench端嘗試它。

INSERT INTO `m1cleedb`.`duyurular` 
(`adi`, 
`kim_icin`, 
`duyurulma_tarihi`, 
`detay`, 
`kategori`) 
VALUES 
('ğğ','ğğ','ğğ','şş','ğğ'); 

結果是令人沮喪的。它插在「G,S」字符正確...

什麼會導致我的asp.net插入命令和我的MySQL工作臺插入命令之間的區別? ://

我也沒有把一些斷點,我看到P_1 paramater的價值真正接觸到「GG」 ..

任何幫助,將不勝感激..

回答

2

我相信你需要告訴?連接使用什麼類型的編碼。

MySqlConnection("server=localhost;database=m1cleedb;uid=m1cleeuser;pwd=**;pooling=false"); 

應該

MySqlConnection("server=localhost;database=m1cleedb;uid=m1cleeuser;pwd=**;pooling=false;CHARSET=utf8;"); 

C# Mysql UTF8 Encoding

+0

你知道嗎?有效 !!!!我現在想擁抱你。 :)))一次又一次地謝謝你......... :) – m1clee 2014-12-07 12:32:46