2014-12-07 25 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